我正在开发一个使用NotificationManager发送通知的应用。我设置了一个Android Wear模拟器,并将我的Android手机连接到模拟器。我的应用生成的通知显示在Android Wear模拟器上,但使用的图标和颜色不是我所期望的。
通知使用3个图标中的1个作为通知图标,并为3个案例中的每一个设置不同的LED颜色。我在手表模拟器上看到的通知使用应用程序图标,而不是我在通知中设置的图标。此外,通知的背景颜色是纯红色背景,我不确定是什么设置它的颜色。
如何在手表上显示我的通知以匹配我设置的通知图标,以及如何更改BG颜色?!
下面,粉红色框是应用程序图标(而不是我期望的通知图标)。
答案 0 :(得分:1)
通知图标来自手持应用程序的res / drawable文件夹。你在res / drawable-hdpi文件夹中有一个同名的图标吗?
http://developer.android.com/training/wearables/notifications/creating.html
注意:与setBackground()一起使用的位图对于非滚动背景应该具有400x400的分辨率,对于支持视差滚动的背景应该具有640x400的分辨率。将这些位图图像放在掌上电脑应用程序的res / drawable-nodpi目录中。将其他非位图资源放置在掌上电脑应用的res / drawable-hdpi目录中,用于可穿戴通知,例如setContentIcon()方法使用的那些。
答案 1 :(得分:0)
据我所知,LED的颜色与可穿戴通知无关。默认情况下,背景颜色会选中图标及其豁免,如果您设置了一个大图标图像,它将使用此图标。由于那个大图标图像的质量很差,还有另一个要求实现这一目标的要求。这是一个完整的例子:
NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
.setContentTitle("title")
.setContentText("message")
// replace the drawable if you want something else
.setSmallIcon(R.drawable.ic_launcher);
NotificationCompat.WearableExtender extender =
new NotificationCompat.WearableExtender();
Bitmap bg = BitmapFactory.decodeResource(context.getResources(),
R.drawable.background);
// in the line above you can change the background image
extender.setBackground(bg);
builder.extend(extender);
NotificationManagerCompat notificationManager =
NotificationManagerCompat.from(context);
notificationManager.notify(42, builder.build());