我已经创建了悬浮通知。就像下面这样,
当我收到推送通知时,我会启动服务来显示通知,代码如下:startService(new Intent(this,NotificationService.class));
但是我得到的通知图标是灰色的,不是原来的颜色。我在很多网站和堆栈问题中搜索了很多,但是关于这个问题的答案是放置通知图标的Android清单中的代码,就像我上面提到的那样。尽管我遵循了答案,但无法像dominos一样设置通知图标。我找不到哪里出错了。浏览了大部分已发布的堆栈问题,但是没有找到适合我的问题的答案。
请有人帮帮我...
以下是我得到的通知。
NotificationCompat.Builder notification = new NotificationCompat.Builder(this, channelId)
.setContentTitle("Message")
.setContentText("Recieved Successfully")
.setContentIntent(pendingIntent)
//.setColor(ContextCompat.getColor(this, R.color.green))
.setSmallIcon(R.drawable.notification_icon)
.setDefaults(Notification.DEFAULT_ALL)
.setContentIntent(pendingIntent)
.setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION))
.setAutoCancel(true)
.setPriority(NotificationCompat.PRIORITY_HIGH);
manager.notify(m,notification.build());
上面的代码放在一个名为NotificationService的类中,该类继承自Service。
我可以使用以下代码设置颜色:
setColor(ContextCompat.getColor(this, R.color.colorAccent))
但是使用它只能设置一种唯一的颜色。
我的目标不是这样。我想像Domino那样以其原始颜色设置我的图标。
在Android清单中添加以下代码:
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/notification_icon" />
当我收到推送通知时,我会启动服务来显示通知,代码如下:startService(new Intent(this,NotificationService.class));
但是我得到的通知图标是灰色的,不是原来的颜色。我在很多网站和堆栈问题中搜索了很多,但是关于这个问题的答案是放置通知图标的Android清单中的代码,就像我上面提到的那样。尽管我遵循了答案,但无法像dominos一样设置通知图标。我找不到哪里出错了。浏览了大部分已发布的堆栈问题,但是没有找到适合我的问题的答案。
![enter image description here](https://istack.dev59.com/pupJj.webp)
以下是我得到的通知。
正如您所看到的,我的通知图标由两个文本组成。而这两个文本包含两种不同的颜色。这就是我想要实现的。但是我只得到了灰色。设置颜色将为h和m设置唯一的颜色。我不想要那样。
这没有解决方案吗??没有人实现过吗?