簡體   English   中英

推送通知圖標顯示為灰色

[英]Push Notifications icon displaying gray color

在我的應用程序Firebase推送通知中無法正確顯示圖標,它在通知中顯示了總的灰色圖標。 我用於實現通知的代碼

var notificationBuilder = new Notification.Builder(this)
.SetSmallIcon(Resource.Drawable.ic_launcherLmg)
.SetContentTitle(user.Organization)
.SetSubText(user.ModuleName)
.SetContentText(user.BodyText)
.SetAutoCancel(true)
.SetContentIntent(pendingIntent)
.Build();

我正在SetSmallIcon(Resource.Drawable.ic_launcherLmg)行設置的圖標。 ic_launcherLmg圖標位於以下文件夾中,並帶有dimensoins

  1. drawable-idpi--36x36
  2. drawable-mdpi--48x48
  3. drawable-hdpi--72x72
  4. drawable-xhdpi--96x96

應用包含最高8.1 API。 Minimun 5.0 API。

推送通知的屏幕截圖

在此處輸入圖片說明

也許您的圖標沒有通過背景fcm推送顯示? 因此,你需要在此描述放在這里面的應用程序標簽中體現在這里

<meta-data android:name="com.google.firebase.messaging.default_notification_icon"
    android:resource="@drawable/ic_launcherLmg" />

對於未明確設置通知圖標的所有通知消息,Android都會顯示此自定義默認圖標。

您可以使用

使用mipmap圖標而不是可繪制圖標,然后將其放在xxxhdpi-mipmap文件夾中。 如果背景為白色,圖標將自動調整其顏色

要么

使用通知圖標作為android版本,例如

.SetSmallIcon(getNotificationIcon())

功能是或根據需要更改它

private int getNotificationIcon() {
    boolean useWhiteIcon = (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP);
    return useWhiteIcon ? R.drawable.icon_silhouette : R.drawable.ic_launcher;
}

最后,通過更改圖標的顏色解決了該問題。 無論我們要顯示的通知圖標的內容為Gray ,圖標的背景應為White 范例圖片

在此處輸入圖片說明

我沒有注意到尺寸問題,但是首選尺寸應該是

  • mdpi(160 dpi)24 x 24像素
  • hdpi(240 dpi)36 x 36像素
  • xhdpi(320 dpi)48 x 48像素
  • xxhdpi(400 dpi)60 x 60像素

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM