我已经实现了一个粘性服务,当我强制关闭应用程序时,我看到Activity的onDestroy()被调用.但该服务显然没有做任何事情.
这是logcat:
07-01 22:35:30.397: DEBUG/ActivityMine(6505): onDestroy()
07-01 22:35:32.667: INFO/ActivityManager(71): Force stopping package my.large.package uid=10036
07-01 22:35:32.667: WARN/ActivityManager(71): Scheduling restart of crashed service my.large.package/.service.ServiceCommunicator in 5000ms
07-01 22:35:32.667: INFO/Process(71): Sending signal. PID: 6505 SIG: 9
07-01 22:35:32.687: INFO/ActivityManager(71): Force stopping service ServiceRecord{451f65b8 my.large.package/.service.ServiceCommunicator}
Run Code Online (Sandbox Code Playgroud)
如您所见,ServiceCommunicator()不会调用:stopService(),finalize()或onDestroy()!我把Log调用放在了所有3个中.
我如何知道服务何时被强制关闭?我需要捕获该事件,以便我可以关闭文件.
我如何知道服务何时被强制关闭?
你没有.onDestroy()不保证在任何组件上调用.
我需要捕获该事件,以便我可以关闭文件.
然后不要让它们打开.
| 归档时间: |
|
| 查看次数: |
5897 次 |
| 最近记录: |