我在我的应用onDestroy
MainActivity
中覆盖了Acards
。
如果我在我的应用暂停时(当我最近使用其他应用时)清除所有进程(点击Clear all
),则不会调用onDestroy
。
当我的应用暂停并清除时,如何调用onDestroy
?
答案 0 :(得分:1)
当您从最近清除app时,整个过程将被终止,并且与该过程相关联的所有线程也将被终止。因此,您无法创建从最近清算应用程序的回调。
答案 1 :(得分:0)
基本上,从来没有保证会调用onDestroy(),在某些情况下,你的app等进程会被直接杀死,无论如何都会绕过方法调用。
根据此链接: https://developer.android.com/reference/android/app/Activity.html#onDestroy%28%29
protected void onDestroy()
在API级别1中添加在活动开始之前执行任何最终清理 销毁。这可能是因为活动正在结束 (有人称之为finish(),或者因为系统是暂时的 销毁此活动实例以节省空间。您可以 使用isFinishing()方法区分这两种情况。
注意:不要指望将此方法称为保存地点 数据!例如,如果活动正在编辑内容中的数据 提供者,这些编辑应该在onPause()或 onSaveInstanceState(Bundle),不在这里。这种方法通常是 实现释放资源,如与线程相关联的线程 活动,以便被破坏的活动不会留下这样的东西 当其余的应用程序仍在运行时。有 系统将简单地杀死活动的主机的情况 进程中没有调用此方法(或任何其他方法),所以它 不应该被用来做那些打算留下来的东西 过程消失后。
但是,您可以将代码移至onPause()或onStop()