我的应用程序有一个启动两个服务但不绑定它们的活动。如果我选择返回按钮退出应用程序(我在任务管理器中看不到它),应用程序启动的两个服务都会继续运行。但是,如果我转到任务管理器并终止应用程序,这两个服务都会停止。我不确定这是否是预期行为,但我希望服务即使在应用程序退出后也能继续运行。请有任何想法。
谢谢
我的应用程序有一个启动两个服务但不绑定它们的活动。如果我选择返回按钮退出应用程序(我在任务管理器中看不到它),应用程序启动的两个服务都会继续运行。但是,如果我转到任务管理器并终止应用程序,这两个服务都会停止。我不确定这是否是预期行为,但我希望服务即使在应用程序退出后也能继续运行。请有任何想法。
谢谢
这是任务管理器的预期行为(并在 ManageApplication 中强制停止)。如果应用程序继续运行应用程序正在执行的后台工作,停止应用程序有什么好处?
您无法阻止用户在库存版本的 Android 操作系统上终止您的服务
这是预期的行为。服务不在自己的进程中运行。当您的应用程序被终止时,您的整个进程都会随之终止。
在我附加的文档中,向下一页有一个橙色块(不幸的是,我不认为我可以链接到它:-( )简而言之,这将告诉您服务是什么。
我不知道!但是你应该试试这个
正如已经提到的,这是预期的行为。杀死启动服务的应用程序也应该杀死正在运行的服务。如果你想在应用程序被杀死时保持你的服务运行,你应该在一个单独的进程中启动服务,这可以通过在清单中的以下声明来实现:
<service
android:name=".ServiceClassName"
android:process=":yourappname_background" >
...
参考:https ://stackoverflow.com/a/15474347/1150795
请注意,通常应用程序不会被杀死,直到用户从任务/应用程序管理器中明确杀死它或系统由于资源有限、电池电量不足或类似原因而将其杀死。我不确定它是否是处理此类事情的典型用例,以及您是否真的需要关心它。