Android磨损通知的意外图标和背景色

Android磨损通知的意外图标和背景色,android,android-notifications,wear-os,Android,Android Notifications,Wear Os,我正在开发一个使用NotificationManager发送通知的应用程序。我设置了一个Android Wear模拟器,并将我的Android手机连接到该模拟器。我的应用程序生成的通知会出现在Android Wear emulator上,但使用的图标和颜色不是我所期望的 通知使用3个图标中的1个作为通知图标,并为3个案例中的每一个设置不同的LED颜色。我在watch emulator上看到的通知使用应用程序图标,而不是我在通知中设置的图标。另外,通知的背景颜色是纯红色背景,我不确定是什么设置了这

我正在开发一个使用NotificationManager发送通知的应用程序。我设置了一个Android Wear模拟器,并将我的Android手机连接到该模拟器。我的应用程序生成的通知会出现在Android Wear emulator上,但使用的图标和颜色不是我所期望的

通知使用3个图标中的1个作为通知图标,并为3个案例中的每一个设置不同的LED颜色。我在watch emulator上看到的通知使用应用程序图标,而不是我在通知中设置的图标。另外,通知的背景颜色是纯红色背景,我不确定是什么设置了这种颜色

如何让手表上的通知与我设置的通知图标匹配,以及如何更改背景颜色

下面的粉红色框是应用程序图标(而不是我期望的通知图标)


据我所知,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());

通知图标来自手持应用程序的res/drawable文件夹。在res/drawable hdpi文件夹中是否有同名图标


注意:与setBackground()一起使用的位图对于非滚动背景的分辨率应为400x400,对于支持视差滚动的背景的分辨率应为640x400。将这些位图图像放在手持应用程序的res/drawable nodpi目录中。将用于可穿戴通知的其他非位图资源(例如与setContentIcon()方法一起使用的资源)放置在手持应用程序的res/drawable hdpi目录中。

我不明白为什么手表上的通知图标是应用程序图标,而不是我用作手机上显示的通知图标的图标。