TECHNICAL DOCUMENT

怎么让 App 不被系统关掉

国产 Android 手机 (小米 / 华为 / OPPO / vivo / 一加 / 魅族等) 出厂自带”省电策略”, 会默认清理长时间运行的 App, 包括我们这种需要持续监控的工具。

如果不做设置, 你可能看到:

  • App 装好了, 但十几分钟后就不再阻断
  • 屏幕时间统计跳变, 中间一段空白
  • 重启手机后 App 没自动恢复

必做的 3 项设置

不同手机品牌路径不一样, 但大体都是这 3 类:

  1. 省电策略 → 把 Tortoise 设为”无限制”
  2. 后台运行 → 允许 Tortoise 后台活动
  3. 自启动 → 允许 Tortoise 开机启动 + 关联启动

Tortoise 首次启动时, 会自动引导你完成对应你手机品牌的设置路径。 如果错过了引导, 在 Tortoise 主屏 → 设置 → “权限自检”里随时重新走一遍。

我们做了什么努力

不是把所有责任都推给你, 我们这边也做了一系列设计:

三层兜底监控

  • 第一层: 持续运行的前台服务 (你看到的”正在运行”图标)
  • 第二层: 系统定时心跳 (即使前台服务被杀, 仍会定时唤醒检查)
  • 第三层: 周期性后台任务 (作为最后兜底)

任一层断了, 其他层还能补上。

复活机制

即使被强行关掉 (例如孩子在系统设置里”强制停止”), 我们有一套复活协调机制, 会自动尝试重启:

  • 大多数情况下 ≤ 5 秒
  • 95% 的情况下 ≤ 1 分钟
  • 极端情况下 ≤ 5 分钟

异常恢复

即使被杀掉一段时间, 复活后会回溯这段空窗期的使用情况, 把丢失的时间统计补回来 — 不会因为”被杀了 10 分钟”就让孩子多得 10 分钟免费时间。

仍然杀不住怎么办

如果你都设置了, 而且重启过手机, 但仍发现 App 失效:

  1. 重新跑一遍权限自检 (Tortoise 主屏 → 设置)
  2. 在 Tortoise 主屏 → 设置 → 反馈, 告诉我们: 手机品牌 / 系统版本号 / 大致现象
  3. 我们针对了 8 个主流国产品牌做了适配; 如果你的设备是少见型号, 反馈可以帮我们改进

兜底建议

如果你的设备真的太”狠” (有些定制系统比官方系统还激进), 退而求其次:

  • 把 Tortoise 加桌面快捷方式 (打开一次就能维持监控运行较长时间)
  • 每晚睡前手动打开一下 Tortoise (重启监控周期)

这不是优雅做法, 但在最难搞的设备上能多撑一段。


想了解每个权限的具体用途 → App 权限申请详解 应急情况 → 常见问题

原文出处 public/08-keep-app-alive.md

添加开发者微信

扫码与我建立联系

WeChat QR Code

验证信息请注明: Tortoise 用户