我有一个cordova项目,并且我已使用Android Studio图像向导通过将图像用作前景而将可绘制颜色用作背景来制作自适应图标。我之前已经做过,而且工作正常,但是对于这个特定项目,无论在模拟器中还是在设备上,背景色都不会显示。但是,前景图像正确显示。更奇怪的是,当我打开ic_launcher.xml文件时显示的预览视图正确显示了该图标,同时显示了前景图像和背景色。
我的AndroidManifest.xml看起来像这样:
<?xml version='1.0' encoding='utf-8'?>
<manifest android:hardwareAccelerated="true" android:versionCode="30000" android:versionName="3.0" package="io.custom.fit" xmlns:android="http://schemas.android.com/apk/res/android">
<supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" />
<uses-permission android:name="android.permission.INTERNET" />
<application android:drawable="@color/ic_launcher_background" android:hardwareAccelerated="true" android:icon="@mipmap/ic_launcher_foreground" android:label="@string/app_name" android:supportsRtl="true">
<activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:theme="@android:style/Theme.DeviceDefault.NoActionBar" android:windowSoftInputMode="adjustResize">
<intent-filter android:label="@string/launcher_name">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="26" />
</manifest>
和我的ic_launcher.xml看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@color/ic_launcher_background"/>
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
</adaptive-icon>
也获得了color.xml文件:
<resources>
<color name="ic_launcher_background">#6EADEA</color>
</resources>
答案 0 :(得分:0)
检查前景图像是否具有透明背景。我遇到了这个问题,并花了很多时间进行调试,然后才意识到前景图像输出不正确并且背景颜色偏灰,因此它覆盖了Android中的背景图标。