【发布时间】:2021-09-21 02:38:08
【问题描述】:
我刚刚修复了我们应用程序中的一个错误。问题是对接或取消对接设备会导致应用程序重新启动。我在搜索大量论坛线程后发现的修复方法是将 uiMode 附加到 AndroidManifest.xml 文件中的 android:configChanges 属性:
<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>
我想确保通过提交此更改不会破坏其他一些重要功能。据我了解,这可以防止我们的应用程序在停靠或取消停靠时重新启动。但仅此而已吗?我找不到任何易于理解的文档。
【问题讨论】:
-
好的,找到了... 用户界面模式已更改 — 这可能是由于用户将设备放入桌面/车载底座或夜间模式更改时造成的。
-
这个问题本身就是对接模式面临的问题的答案! commonsware.com/blog/2019/06/19/…
标签: android