Firebase 通知呈灰色颤动 [英] Firebase Notification is grey flutter

查看:20
本文介绍了Firebase 通知呈灰色颤动的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用 Firebase Cloud Messaging 向我的 Flutter 应用发送通知.它工作正常,但我的应用程序图标通知在 Google Pixel XL 上显示为灰色.我可以看到轮廓,但由于某种原因,它仍然是灰色的.我在不同的文章中读到它与 Android SDK 级别有关,但是 Flutter 中的 minSdkVersion 已经是 16(小于 21)所以我不明白为什么颜色不会显示.

那么是否可以使用颜色显示我的应用程序图标以获取通知?

--提前致谢

解决方案

希望有帮助.

I'm using Firebase Cloud Messaging to send notifications to my Flutter app. It works fine but my app icon notification is grey on the Google Pixel XL. I can see the outline, but for some reason, it's still grey. I've read in different articles that it has to do with the Android SDK level, but the minSdkVersion in Flutter is already 16 (less than 21) so I don't understand why the color won't show on.

So is it possible to show my app icon for notifications with the color?

--Thanks in advance

解决方案

Here you can read:

Customize default notification

Custom default icon

Setting a custom default icon allows you to specify what icon is used for notification messages if no icon is set in the notification payload. Also use the custom default icon to set the icon used by notification messages sent from the Firebase console. If no custom default icon is set and no icon is set in the notification payload, the application icon (rendered in white) is used.

Custom default Color

You can also define what color is used with your notification. Different android versions use this settings in different ways: Android < N use this as background color for the icon. Android >= N use this to color the icon and the app name.

Try putting that in your AndroidManifest.xml

<!-- Set custom default icon. This is used when no icon is set for incoming notification messages. -->
<meta-data
    android:name="com.google.firebase.messaging.default_notification_icon"
    android:resource="@drawable/ic_stat_ic_notification" />
<!-- Set color used with incoming notification messages. This is used when no color is set for the incoming notification message.  -->
<meta-data
    android:name="com.google.firebase.messaging.default_notification_color"
    android:resource="@color/colorAccent" />

You can find more info here.

You also need to have your colorAccent define. You can create a colors.xml file in your res folder like that:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="colorAccent">#E91E63</color>
</resources>

In this folder: /android/app/src/main/res/values

Also the icon must be in the drawable folder.

But remember that this icon must be white with a transparent background.

For some type of icons to be colored you need on some device sets meta-tags you already added in yuor AndroidManifest.xml and your icon must follow some specifications (must be white in a transparent background). You can try to generate one here. Give it a try. Remember to put it on drawable folder and update the manifest meta-tag icon name.

Read also this SO question that stengthens up what I've said here.

I've tried on the Pixel 2 emulator running API level 27:

Hope it helps.

这篇关于Firebase 通知呈灰色颤动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆