use*_*771 52 android android-service
android上的Activity的生命周期图并不保证会调用onDestroy(),但是可能会终止该进程并突然删除Activity.android上的服务的生命周期图确保了将调用onDestroy().所以我有两个与这种差异有关的问题.
首先,如果Service是与Activity相同的进程的一部分,是否调用了Service onDestroy(),虽然没有调用Activity onDestroy()?我不这么认为,因为"杀死进程"表明操作系统正在停止其线程并释放其资源.
如果是这样的话,操作系统是否会突然杀死仅服务进程?
kab*_*uko 34
我不确定你在哪里可以看到服务有保证onDestroy().据我所知,情况并非如此.如果您阅读了此文档的页面,它将描述可以终止服务的条件.因此,如果您询问是否有一个同时托管活动和服务的进程被杀死,将onDestroy()在服务上调用(但不会在活动上调用),那么答案是否定的; 服务的onDestroy()不一定会被调用.至于服务操作系统是否可以突然杀死仅服务进程:是的,它可以.当你有很多工作要做时,尤其如此,你的onStartCommand调用只会将工作排队异步进行.然后,该服务将不花大部分的时间都处于受保护的onCreate,onStartCommand或onDestroy方法.
Mar*_*och 12
有两件事需要考虑:
onDestroy()不会被调用,因为Android操作系统无论如何都会回收资源(这是OS的基本任务 - 如果你不知道的话).onDestroy()被称为因为这是开发人员可以释放资源的地方.当然,在这种情况下,应用程序的进程保持不变(因为可能在其中运行其他服务/活动).| 归档时间: |
|
| 查看次数: |
37854 次 |
| 最近记录: |