我正在使用材料用户界面与React,并希望使一个Android版本与 cordova 。
我跑:
cordova create appname
cordova platform add android
cordova build android
www目录是指向我的项目中的build目录的符号链接。
当我在Android模拟器中运行它时,应用程序使用的是浅色,一切看起来都很好。如果我创建apk并将其安装到我自己的设备上,颜色看起来就不同了。有些颜色是倒置的,有些颜色看起来比应该的要暗得多。登录屏幕本来应该是浅色的,但现在也是深色的。
问题是我的应用程序已经内置了黑暗模式检测,我想更喜欢 cordova 改变颜色本身。
第一张图片是如何看起来像与 cordova 生成的APK。注意如何文字颜色是倒置和标签几乎看不见。
第二张图片是它应该看起来的样子。注意文本的颜色是正确的,标签中有更多的对比度。
我找不到任何关于 cordova 内置黑暗模式的文档,也找不到任何其他人身上发生这种情况的证据,所以我不太明白为什么它会被改变。
我注意到的另一件事是,如果我把它安装为PWA或在Chrome中打开它,它会根据设备的首选项正确地更改主题。
如果我将设备设置为浅色模式,Cordova版本会显示应用的深色主题。如果我将设备设置为深色模式,它会强制显示深色主题,在深色模式之上更改所有颜色。
这是我的config.xml的内容
<?xml version='1.0' encoding='utf-8'?>
<widget id="app.platelet.platelet" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>platelet.app</name>
<description>platelet dispatch for blood bikes</description>
<author email="info@platelet.app" href="https://platelet.app">
platelet.app
</author>
<content src="/" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<platform name="android">
<!--
ldpi : 36x36 px
mdpi : 48x48 px
hdpi : 72x72 px
xhdpi : 96x96 px
xxhdpi : 144x144 px
xxxhdpi : 192x192 px
-->
<icon src="icon/ldpi.png" density="ldpi" />
<icon src="icon/mdpi.png" density="mdpi" />
<icon src="icon/hdpi.png" density="hdpi" />
<icon src="icon/xhdpi.png" density="xhdpi" />
<icon src="icon/xxhdpi.png" density="xxhdpi" />
<icon src="icon/xxxhdpi.png" density="xxxhdpi" />
</platform>
</widget>
我正在测试的设备是小米Mi 9 T,安装了Miui 12.1.4.0(Android 11)。
谢谢你!
1条答案
按热度按时间col17t5w1#
修复方法是添加:
<meta name="color-scheme" content="light dark" />
到index.html中的
<head>