Android:当应用程序在后台 运行 时,header 上的图标错误

Android: Wrong icon on header, when app is running in backround

在 99% 的设备上,header 任务栏上的应用程序图标显示没有问题: image

但在 Sony Xperia Z3、Lollipop 上,它显示为白色方块: image

这是我的清单文档中的应用程序部分:

<application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:theme="@style/AppTheme.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter>
                <action android:name="intent.to.front" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="hidden" />

        <activity
            android:name=".FromActivity"
            android:label="@string/title_activity_from" />
        <activity
            android:name=".ToActivity"
            android:label="@string/title_activity_to" />
        <activity
            android:name=".RateActivity"
            android:label="@string/title_activity_rate" />
        <activity
            android:name=".VerificationActivity"
            android:label="@string/title_activity_verification" />
        <activity
            android:name=".CrashActivity"
            android:label="@string/title_activity_crash" />
        <activity
            android:name=".OrderProgressActivity"
            android:label="@string/title_activity_order_progress"
            android:launchMode="singleTop">
            <intent-filter>
                <action android:name="intent.to.front" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
    </application>

所以如果你知道答案,请帮忙,为什么它只发生在 xperia 设备上?

Lollipop 设备将自己的方形添加到通知图标。您需要确保您的图像具有 alpha 背景,以便在对其应用颜色填充时,您仍然可以看到图像。

如果您仍然希望它像在旧设备上那样显示,您可以检查代码以查看 Android 它们是什么版本 运行 并提供不同的图标。

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {

}

让Android-通知图标轻松适用于所有版本。

Android Assets-Notification Icon Generator

图标生成器可让您快速轻松地从现有源图像、剪贴画或文本生成图标。

快乐编码:)