C# 推送通知图标显示灰色
在我的应用程序Firebase推送通知中,未正确显示图标,它在通知中显示总的灰色图标。 用于实现通知的代码IC# 推送通知图标显示灰色,c#,android,firebase,xamarin,xamarin.android,C#,Android,Firebase,Xamarin,Xamarin.android,在我的应用程序Firebase推送通知中,未正确显示图标,它在通知中显示总的灰色图标。 用于实现通知的代码I var notificationBuilder = new Notification.Builder(this) .SetSmallIcon(Resource.Drawable.ic_launcherLmg) .SetContentTitle(user.Organization) .SetSubText(user.ModuleName) .SetContentText(user.Body
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\u launchermg)
行。
ic_launcherLmg图标可在以下文件夹中找到,其中包含给定尺寸
.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;
}
你可以用
使用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;
}
可能您的图标没有在背景fcm推送时显示?因此,您需要将此内部应用程序标记放入清单中,如下所述:
Android为未明确设置通知图标的所有通知消息显示此自定义默认图标
可能您的图标没有在背景fcm推送时显示?因此,您需要将此内部应用程序标记放入清单中,如下所述:
Android为未明确设置通知图标的所有通知消息显示此自定义默认图标
最后通过改变图标的颜色解决了这个问题。无论通知图标的内容是什么,我们希望显示的内容应该是灰色的,图标的背景应该是白色的。示例图像 我没有注意到尺寸问题,但首选尺寸应为
- mdpi(160 dpi)24 x 24像素
- hdpi(240 dpi)36 x 36像素
- xhdpi(320 dpi)48 x 48像素
- xxhdpi(400 dpi)60 x 60像素
- mdpi(160 dpi)24 x 24像素
- hdpi(240 dpi)36 x 36像素
- xhdpi(320 dpi)48 x 48像素
- xxhdpi(400 dpi)60 x 60像素