Firebase Уведомление серого флаттера - PullRequest
0 голосов
/ 06 января 2019

Я использую Firebase Cloud Messaging для отправки уведомлений в мое приложение Flutter. Он работает нормально, но на Google Pixel XL уведомление о значке моего приложения серое. Я вижу контур, но по какой-то причине он все еще серый. Я читал в разных статьях, что это связано с уровнем Android SDK, но minSdkVersion во Flutter уже 16 (меньше 21), поэтому я не понимаю, почему цвет не будет отображаться.

Так можно ли отображать значок моего приложения для уведомлений с цветом?

- Заранее спасибо

1 Ответ

0 голосов
/ 06 января 2019

Здесь Вы можете прочитать:

Настройка уведомлений по умолчанию

Пользовательский значок по умолчанию

Настройка пользовательского значка по умолчанию позволяет указать, какой значок используется для уведомлений, если в уведомлении не установлен значок полезная нагрузка. Также используйте пользовательский значок по умолчанию, чтобы установить значок, используемый уведомления, отправленные из консоли Firebase. Если нет пользовательских установлен значок по умолчанию и значок не установлен в полезной нагрузке уведомления, используется значок приложения (отображается белым цветом).

Цвет по умолчанию

Вы также можете определить, какой цвет используется в вашем уведомлении. Различные версии Android используют эти настройки по-разному: Android = N используйте его, чтобы раскрасить значок и название приложения.

Попробуйте вставить это в 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" />

Вы можете найти больше информации здесь .

Вам также нужно указать colorAccent. Вы можете создать файл colors.xml в папке res следующим образом:

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

В этой папке: /android/app/src/main/res/values

Также значок должен находиться в папке drawable.

Но помните, что этот значок должен быть white с прозрачным фоном .

Для того чтобы некоторые типы значков были цветными, вам нужно на некоторых наборах устройств meta-tags, которые вы уже добавили в yuor AndroidManifest.xml, и ваш значок должен соответствовать некоторым спецификациям (должен быть белым на прозрачном фоне) , Вы можете попробовать сгенерировать один здесь . Попробуйте. Не забудьте поместить его в папку для рисования и обновить манифест meta-tag имя значка.

Прочтите также этот ТАК вопрос , который усиливает то, что я здесь сказал.

Я пробовал на эмуляторе Pixel 2, работающем на уровне API 27:

enter image description here

Надеюсь, это поможет.

...