如何防止我的背景进程死亡

时间:2015-08-31 13:24:14

标签: android

我有以下问题:

我的Android应用程序需要一些设置,可能需要几分钟。它在首次启动时仅执行一次。因此,当新用户第一次启动应用程序时,将启动一个特殊的初始化过程,并出现带有“首次启动准备”标题的进度对话框。完成此步骤后,下次不需要它。

问题是,在执行此过程时,用户可以切换到另一个活动 - 启动另一个应用程序或拨打电话。它需要这个设置过程的死亡。我该怎么做才能避免这种情况?

请注意,此设置过程在IntentService中运行。但它没有帮助。

提前谢谢。

2 个答案:

答案 0 :(得分:0)

您无法阻止Service被杀。但是,您可以使用标记START_STICKY启动它。然后,只要有空闲容量,它就会重新启动。

你需要以某种方式保存它的状态。 你可以用例如onDestroy为此。

您还可以查看here了解如何使服务更有可能存活的一些技巧。

答案 1 :(得分:0)

谢谢你们,伙计们!在@ F43nd1r的帮助下,我找到了满意的解决方案:在我的流程开始时,我调用了startForeground(),它可以防止服务死亡。然后,最后,我调用stopForeground()。