我很困惑Activity.onDestroy()
。当我的 Activity 被销毁时,我需要释放一些资源,但似乎 onDestroy() 只是在我按下“返回”键时被调用,而不是在我的 Activity 被 Dalvik 杀死时调用。我只是通过添加日志来测试它:
Log.v("my_tag", "onDestroy() called");
在 onCreate() 方法中也是如此:
Log.v("my_tag", "onCreate() called");
然后我开始我的活动,我在日志中看到:onCreate() called
。我按“返回”键,然后再次启动 Activity,然后我看到:
onDestroy() called
onCreate() called
然后我按“主页”键并再次转到我的活动,日志不会改变。在这里好了。
然后我再次按“Home”键并启动一些真正“繁重”的应用程序。在日志中与 onDestroy() 无关,但是当我再次启动我的活动时,我在日志中看到:onCreate() called
!所以, onDestroy() 没有被调用,但是我的 Activity 被杀死了。怎么了?