Android开发:我的应用程序不时被杀死并在此之后重新启动

时间:2016-11-03 18:06:54

标签: android

我有一个带有服务的应用程序(onStartCommand返回START_STICKY)。一切正常,应用程序和服务重新启动,如果我刷掉应用程序或重新启动设备。这很有效。

但: 该应用程序不时重新启动(有时在几分钟后,有时在一小时后)。这意味着,应用程序被杀死并重新启动。但我不知道为什么。

  • 任何提示?
  • 杀死我应用的另一个进程?
  • 我的代码中可能有错误?
  • 操作系统?

也许您可以给我一个通常的提示或方向来搜索错误。

由于 汉斯

1 个答案:

答案 0 :(得分:1)

一般情况下,您永远不能假设您的服务不会被杀死。

您只需设计应用程序即可恢复您的进程,其状态将被操作系统杀死。

操作系统可以在您认为没有必要将其保留在后台时终止您的应用。您的国旗BasicDataSource会将您的服务恢复到后台,但此标记并不意味着它将永久运行而不会被终止。

因此,请确保使用START_STICKY来保留您的重要状态或数据,甚至onSaveInstanceState()将数据保存在本地存储中,以防您的应用无法保存状态。

此链接可能会对您有所帮助:Android - Lifecycle and saving an Instance State questions