6

我的应用程序有一个启动两个服务但不绑定它们的活动。如果我选择返回按钮退出应用程序(我在任务管理器中看不到它),应用程序启动的两个服务都会继续运行。但是,如果我转到任务管理器并终止应用程序,这两个服务都会停止。我不确定这是否是预期行为,但我希望服务即使在应用程序退出后也能继续运行。请有任何想法。

谢谢

4

4 回答 4

9

这是任务管理器的预期行为(并在 ManageApplication 中强制停止)。如果应用程序继续运行应用程序正在执行的后台工作,停止应用程序有什么好处?

您无法阻止用户在库存版本的 Android 操作系统上终止您的服务

于 2012-07-06T14:41:57.113 回答
2

这是预期的行为。服务不在自己的进程中运行。当您的应用程序被终止时,您的整个进程都会随之终止。

在我附加的文档中,向下一页有一个橙色块(不幸的是,我不认为我可以链接到它:-( )简而言之,这将告诉您服务是什么。

于 2012-07-06T14:42:10.400 回答
0

我不知道!但是你应该试试这个

于 2012-07-06T15:13:34.253 回答
0

正如已经提到的,这是预期的行为。杀死启动服务的应用程序也应该杀死正在运行的服务。如果你想在应用程序被杀死时保持你的服务运行,你应该在一个单独的进程中启动服务,这可以通过在清单中的以下声明来实现:

<service
    android:name=".ServiceClassName"
    android:process=":yourappname_background" >
    ...

参考:https ://stackoverflow.com/a/15474347/1150795

请注意,通常应用程序不会被杀死,直到用户从任务/应用程序管理器中明确杀死它或系统由于资源有限、电池电量不足或类似原因而将其杀死。我不确定它是否是处理此类事情的典型用例,以及您是否真的需要关心它。

于 2016-05-04T10:14:00.990 回答