Android服务意外停止

时间:2012-03-24 16:16:27

标签: android service

我有一项服务,也包含一项活动,问题是有时会被操作系统关闭,任何想法如何防止这种情况发生?

3 个答案:

答案 0 :(得分:1)

不确定“包含活动的服务”是什么意思。

操作系统可以并将根据内存需求关闭服务。这种情况发生的频率取决于您在设备上运行的内容以及设备的内存容量。

尽量减少这种情况,您可以致电服务。startForeground()。请阅读javadocs以了解正确用法,请同时查看stopForeground()

请注意,这仍然无法保证。你必须创作你的应用程序,以便在你的服务被销毁时优雅地处理。请阅读Service生命周期,了解如何处理此问题。

即使您可以随时保持服务运行,也不是一个好主意。这不是插入交流电源的个人电脑。永久运行的服务将极大地影响设备的电池寿命。

答案 1 :(得分:0)

您有一个包含活动的服务没有任何意义。您可以拥有连接的服务,但不能拥有包含活动的服务。服务以及应用程序的其余部分可以随时被Android操作系统终止,并在用户导航回来时恢复。相反,您需要设计您的应用程序,使其能够容忍这些生命周期事件,并且不需要永远保留。

答案 2 :(得分:0)

AFAIK,服务或活动不能保证一直运行。您必须处理服务的生命周期事件,如shutdown和start。