如何解决如果不能保证调用onDestroy,为什么要实现呢?
| 根据android Activity Lifecycle,保证被调用的唯一回调(如果一个活动离开了Running状态,通常是预期的)是onPause()
。
因此,我必须假设在某些情况下实现onStop()
和onDestroy()
是有意义的,尽管并不能真正保证调用它们。
我知道,当活动有可能通过“已停止”状态返回到“正在运行”状态时,应实施“ 1”(为什么要这样做而不是直接返回是另一个问题)。
但是,当我可以将所有清理/状态保存都置为ѭ0时,对ѭ2的需求对我来说还是不清楚的。
您能描述一个实际应用的情况(即与开车等类似的情况),在其中可以实现onDestroy()
吗?
解决方法
如果您显式调用finish(),则会调用onDestroy;你自己
您的主要活动在地图活动上调用startActivityForResult。
使用LocationListener进行地图活动时,用户单击地图并选择说当地餐馆。
然后,该活动设置了一些要发送回您的主要活动的附加内容,然后显式调用了finish();。本身和onDestroy中的内容会杀死LocationListener和您调用的其他变量。
刚刚在文档中找到了
onDestroy()=在销毁活动之前收到的最后一次呼叫。这可能是由于活动即将完成(有人在其上称为finish()),或者因为系统正在临时销毁该活动实例以节省空间。您可以使用isFinishing()方法区分这两种情况。
, 你能描述一个真实的应用情况
(即不比喻为驾驶汽车
等),
实现onDestroy()?
当您要捕获配置更改时。全部包含在SDK中:
http://developer.android.com/reference/android/app/Activity.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。