【问题标题】:How to auto restart a service when killed?杀死时如何自动重启服务?
【发布时间】:2014-10-28 18:19:03
【问题描述】:

我已经发布了很多关于这个主题的帖子,其中一些作品,但仅在某些设备上。例如,它适用于我的 Nexus 4、带有 cyaogenmod 的 Nexus 5,但不适用于我的小米 Mi2s(果冻梁 4.1.1)

我尝试将其设置为粘性,使用警报,并在销毁时使用广播接收器。但他们俩都没有成功。当我杀死应用程序时,它再也不会醒来。但是在同一设备上,Whatsapp 可以完美运行,即使我杀死它,它也会再次唤醒..

有什么方法可以不使用 GCM 吗?

一些我已经查过的链接:

How to restart a killed service automatically?

Service that repeatedly runs a method, after an amount of time

https://stackoverflow.com/a/21551045/627307

【问题讨论】:

  • 如果需要,您可以每隔几分钟就有一个警报管理器来重新启动您的服务。你也试过看看是否调用了onStoponDestroyed 方法?
  • START_STICKY 不工作?
  • onDestroyed 没有被调用,并且在小米上也没有开始粘性。相反,whatsapp 服务没有被杀死
  • 您是否为您的查询找到任何解决方案?我在使用小米设备时遇到了同样的问题。

标签: android android-service android-service-binding


【解决方案1】:

我不确定它是否会为您解决问题,但它对我有用。

我正在运行 MIUI 6.6.10

  1. 打开小米提供的安全应用

  2. 点击权限->自动启动

  3. 此处允许您的应用自动启动

WhatsApp 和所有著名的应用程序都能正常工作,因为小米将它们列入白名单并允许它们自动启动。

【讨论】:

  • 你有没有检查它是否在重启服务?如果是,你是如何检查的?因为我已经为我的应用启用了自动启动选项,仍然不知道如何找到它是否在杀死它时重新启动。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多