解锁设备后Android Activity重新启动

时间:2011-12-08 06:08:04

标签: android android-activity

我正在创建一个简单的Android项目。但是当用户解锁屏幕时(锁定后),我的每个活动都会重新启动。这是Android应用程序的正常行为吗?或者我必须在Manifest中处理它?或者别的地方?请帮忙......

2 个答案:

答案 0 :(得分:15)

如果您的目标构建版本是Honeycomb 3.2(API Level 13)或更高版本,则必须同时设置screenSize标志,如:

<activity
    android:configChanges="orientation|screenSize|keyboardHidden"
    android:name="YOUR ACTIVITY NAME">
</activity>

因为即使使用“方向”标记,当应用程序处于活动状态时,您的应用程序将被杀死并重新创建每个方向更改,无论是在屏幕上可见还是由锁定屏幕隐藏。这是因为主要在平板电脑中的可用屏幕尺寸实际上会因系统操作栏的位置变化而发生变化。

这让我疯狂了好几个小时! :/

答案 1 :(得分:4)

需要在每个活动的清单中添加android:configChanges="orientation|keyboardHidden"。并且解决了问题

    <activity
        android:configChanges="orientation|keyboardHidden"
        android:name="YOUR ACTIVITY NAME">
    </activity>