android - 是否确保在 finish() 之后调用 onDestroy()?

标签 android ondestroy activity-finish

我一直认为 finish() 会立即触发 onDestory()。但在 4.3 中似乎并非如此。 我只想知道它会在什么条件下发生? 对不起,我不能把我所有的代码都放在这里。 它让我困惑了几个小时,我找不到任何有用的信息。

最佳答案

From the docs:

onPause() is the last method that's guaranteed to be called before the process can be killed—if the system must recover memory in an emergency, then onStop() and onDestroy() might not be called. Therefore, you should use onPause() to write crucial persistent data (such as user edits) to storage.

无论您是使用 finish() 还是系统自行终止了您的 Activity,都没有关系。如果系统“想要”恢复内存,则无法保证 onDestroy()onStop() 会被调用。

关于android - 是否确保在 finish() 之后调用 onDestroy()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20700894/

相关文章:

android - FragmentActivity 操作栏选项菜单

android - ./gradlew assembleRelease 构建失败,无法找到 com.linkedin.dexmaker :dexmaker:2. 21.0

android - 在 2.2 上获取 ListView 项目/倒序的 View ;适用于 4.0.3

android - Activity OnDestroy 从未调用过?

android - 向 Android Activity 注册 "onDestroy event handler"

android - 完成 Activity - Google map Android

android - android activity finish 什么时候开始

安卓。锁定所有 Activity 的屏幕方向

android被销毁时是否有任何 View 回调?

android - finish() 和 System.exit(0) 之间的区别