我刚刚修复了我们应用程序中的一个bug。问题在于将设备插入或拔出导致应用程序重新启动。通过查阅大量论坛帖子,我找到了解决方法,就是在AndroidManifest.xml文件中的android:configChanges属性后追加uiMode:
<activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|uiMode" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:theme="@android:style/Theme.Black.NoTitleBar" android:windowSoftInputMode="adjustPan">
<intent-filter android:label="@string/launcher_name">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
我希望通过提交这个更改来确保我不会破坏其他重要的功能。据我所知,这可以防止我们的应用在对接或脱离时重新启动。但是这就是所有吗?我找不到任何易于理解的文档。