没有重新启动的Android服务(Android service not restarted)

2019-09-28 15:29发布

我有一个跟踪用户位置的服务。 它不具有全天候运行,但它应该在旅行期间运行。 以下是我已经实现到现在的事情,以确保它的持续运作:

  • 开始服务为前景
  • 使用“START_STICKY”
  • 如果启动服务正在运行,检查每10分钟发出警报。 如果没有启动服务。

尽管所有这些措施,对于某些设备(如MI 3W)服务得到10分钟内死亡,都不会重新启动(甚至没有等待12小时后!)。 从广泛的谷歌搜索我已经了解到,当过程由OS杀死报警不会触发(纠正我,如果我错了),所以这可能是这里的情况。 但是,发生了什么事“START_STICKY”?

所以,我的疑问是:

  • 发生了什么事START_STICKY? 它是一个OS错误(OS V6)?
  • 为什么OS取消所有设定的报警,同时终止进程?
  • 更重要的是如何确保我的服务的行程时间运行?

Answer 1:

某些设备(如MI 3W)

发生了什么事START_STICKY? 它是一个OS错误(OS V6)?

没有。 小蜜不允许应用程序自动启动。 没有错误,这是小米的内存管理技术。

结论

它不会对新小蜜小蜜,因为有一个功能叫做应用程序的权限,在那里用户必须让应用程式自动启动(服务)。

是这样的,让你的应用程序将自动启动:

Settings > permissions > Autostart



文章来源: Android service not restarted