返回键是否破坏了活动?

时间:2010-07-14 18:42:56

标签: android

我的活动定义如下:

    <activity android:name="com.example.ui.HomeActivity"
        android:alwaysRetainTaskState="true"/>

奇怪的是,当在模拟器上运行并按下后退键时,活动被销毁(我在日志中看到了onDestroy())。但是当我在Nexus One手机上运行并按下后退键时,活动不会被销毁(我没有在日志中看到onDestroy())。

有人可以告诉我为什么吗?

感谢。

2 个答案:

答案 0 :(得分:4)

当活动在后台时(按Back键后),它总是停止,但System也可以决定销毁它(例如,系统资源不足时)。你无法确定它什么时候被销毁。

通过调用finish()也可以销毁活动。您可以通过查看isFinishing()onPause回调中的onStop状态来确定这一点。

不要指望onDestroy回调。如果系统会杀死活动,它就不会被调用。

答案 1 :(得分:0)

  

默认情况下,按BACK键完成(销毁)当前活动并将以前的活动显示给用户。

source