我正在运行一个Service
并且想知道在极少数情况下我的应用程序崩溃会自动杀死我Service
吗?如果发生这种情况,我不希望它继续下去。
如果没有,有没有办法做到这一点,比如在onDestroy()
方法中?
我正在运行一个Service
并且想知道在极少数情况下我的应用程序崩溃会自动杀死我Service
吗?如果发生这种情况,我不希望它继续下去。
如果没有,有没有办法做到这一点,比如在onDestroy()
方法中?
我做了一些研究,我想我对你的问题有一个完整的答案。
Service
假设您没有使用远程服务(Service
在不同的进程中) ,子类化很好。假设您Service
的进程与您的进程相同Activity
,如果发生崩溃,它们将一起结束。在这种情况下,我之前的使用建议BoundService
实际上不会产生不同的结果,并且是基于对应用程序组件在 Android 进程中如何工作的错误理解。
从Android 绑定服务中引用 - 我应该在 onServiceDisconnected 中手动重新连接还是尝试自动重新连接:
本地服务:
服务与来自同一个应用程序的其他组件(即绑定到它的活动)在同一进程中运行,当这个单个应用程序范围的进程崩溃或被杀死时,很可能该进程中的所有组件(包括活动绑定到该服务的)也被销毁。
此外,您可以阅读远程服务 Vs。本地服务。