我的新应用程序不支持暗模式。当我在小米上安装它时(开启了深色模式),MIUI在上面应用了深色模式。MIUI在"Settings -> Display -> More Dark mode options“(设置和显示更暗模式选项) (screenshot of "More Dark mode options")中有设置。此选项为我的应用程序打开,并强制暗模式,尽管我的应用程序不支持它。大多数其他应用程序都没有启用此模式。有一些应用程序是“白色”的,但对于他们来说,这种模式没有启用,他们可以正常工作。
我找到了解决方案,将下面这行添加到themes.xml中:
<item name="android:forceDarkAllowed">false</item>
问题是,这一行需要设置minSdkVersion = 29。如何防止MIUI在“更多深色模式选项”中启用选项,并在我的应用程序中强制使用深色模式(就像在大多数其他“白色”应用程序中一样),并将SDK版本保持在21?
基于Android 10的MIUI 12
发布于 2021-04-03 01:31:28
只需将themes.xml文件复制到values-v29文件夹中,并仅在该文件的values-v29变体中添加<item name="android:forceDarkAllowed">false</item>
即可。
如果你在你的主题文件中定义了很多东西,最好是这样的:
values/themes.xml
<style name="Theme.App.Base" parent="Theme.AppCompat.Light.NoActionBar">
... // Your attributes here
</style>
<style name="Theme.App" parent="Theme.App.Base">
</style>
值-v29/hemes.xml
<style name="Theme.App" parent="Theme.App.Base">
<item name="android:forceDarkAllowed">false</item>
</style>
更新:另外,如果你把项目放在normal values文件夹中,我不认为它会崩溃,为什么你首先会认为这是一个问题?像这样的东西不能工作吗?
<item name="android:forceDarkAllowed" tools:targetApi="q">false</item>
https://stackoverflow.com/questions/66783419
复制相似问题