FeedMe 中文文档 下载 App

FeedMe TTS 锁屏后停止 — 前台服务、电池优化、Keep 机制

TTS 朗读或播客播放时,锁屏或把 FeedMe 切到后台后播放停止——这是 Android Doze 机制和后台限制的另一个典型表现。FeedMe 在播放时会启动前台服务(FOREGROUND_SERVICE_MEDIA_PLAYBACK),但部分系统仍会限制,需要额外操作。

FeedMe 做了什么

FeedMe 在播放 TTS 或播客时:

  1. 会启动一个前台服务(Foreground Service)
  2. 通知栏会显示一个常驻通知,告诉你正在播放
  3. Android 8.0+ 要求前台服务必须有通知栏显示

理论上前台服务不受 Doze 机制限制,但实际上不同 Android 版本和不同厂商 ROM (小米 MIUI、华为 EMUI、OPPO ColorOS 等)有额外的后台限制机制。

最常见原因:TTS 引擎的电池优化

FeedMe 播放 TTS 的流程是:FeedMe → 调用 Android 系统 TTS API → TTS 引擎朗读。

很多人只把 FeedMe 设为「不限制」,但忘了TTS 引擎本身也需要设为不限制。如果 TTS 引擎被 Doze 限制,FeedMe 的前台服务还在,但 TTS 引擎不工作了——听起来就是「锁屏后 TTS 突然停了」。

检查清单:

  1. Android 设置 → 电池 → 电池优化 → 找到 FeedMe → 「不限制」
  2. 同样的步骤 → 找到你正在用的 TTS 引擎(Google TTS / 科大讯飞 / 语记 等)→ 「不限制」
  3. 同样的步骤 → 找到播客播放器相关应用(如果有独立的)→ 「不限制」

不同厂商 ROM 的额外限制

部分国产 ROM 有额外的后台清理机制,即使设了不限制也可能被杀:

小米(MIUI)

设置 → 应用管理 → FeedMe → 自启动:开启设置 → 应用管理 → FeedMe → 省电策略:无限制设置 → 应用管理 → FeedMe → 后台弹出界面:允许

华为(EMUI)

设置 → 电池 → 启动管理 → FeedMe:手动管理 → 允许自启动 + 允许后台活动设置 → 电池 → 锁屏清理应用 → FeedMe:不清理

OPPO(ColorOS)

设置 → 电池 → 耗电保护 → FeedMe:后台冻结关闭、异常耗电关闭

三星(One UI)

设置 → 电池和设备保养 → 电池 → 后台使用限制 → FeedMe:添加到不限制列表

FeedMe 官方推荐:dontkillmyapp.com

FeedMe 官方文档里专门推荐了一个介绍各种 ROM 后台限制和设置方法的网站(dontkillmyapp.com),上面有你设备具体型号对应的操作步骤。

一个简单的测试方法

步骤:

  1. 在 FeedMe 里开始播客播放或 TTS 朗读
  2. 锁屏 → 等 5 分钟 → 看是否还在播放
  3. 切换到后台(比如打开微信)→ 等 5 分钟 → 看是否还在播放
  4. 如果任何一步停了 → 说明电池优化没设对

预期行为:锁屏和切后台都不影响播放,通知栏常驻显示播放控制。

关于播客 vs TTS

两者的后台行为略有不同:

场景播客TTS
FeedMe 前台服务✅ FOREGROUND_SERVICE_MEDIA_PLAYBACK✅ 同样用 FOREGROUND_SERVICE_MEDIA_PLAYBACK
需要电池优化的服务FeedMe 本身FeedMe + TTS 引擎(双重)
锁屏后播放正常(音频播放器优先级高)可能被限制(TTS 引擎优先级低)

播客因为是音频播放器行为,优先级通常比 TTS 高——锁屏后播客一般不会停。TTS 涉及额外的 TTS 引擎调用,更容易被 Doze 限制。