使用Android O开发人员预览谷歌已经引入了应该在启动器图标上显示的通知徽章。我正在使用来自开发者频道的Android O模拟器。我写了一个简单的代码来显示通知徽章但它似乎不起作用 -
Notification notification = new Notification.Builder(getApplicationContext())
.chooseBadgeIcon(Notification.BADGE_ICON_SMALL)
.setSmallIcon(android.R.drawable.btn_star)
.setNumber(10)
.build();
mNotificationManager.notify(1, notification);
它只显示为正常通知。
API - https://developer.android.com/reference/android/app/Notification.Builder.html#chooseBadgeIcon(int)
有没有人为此工作过?我错过了什么吗?
在设置中启用了显示徽章。
也尝试使用NotificationChannel。不起作用 -
NotificationChannel mChannel = new NotificationChannel("TestBadge_id", "TestBadgeName", NotificationManager.IMPORTANCE_HIGH);
mChannel.enableLights(true);
mChannel.setLightColor(Color.RED);
mChannel.setShowBadge(true);
mNotificationManager.createNotificationChannel(mChannel);
Notification notification = new Notification.Builder(getApplicationContext())
.chooseBadgeIcon(Notification.BADGE_ICON_SMALL)
.setSmallIcon(android.R.drawable.btn_star)
.setNumber(10)
.setChannel("TestBadge_id")
.build();
mNotificationManager.notify(1, notification);
答案 0 :(得分:5)
早期预览版本中Android-O
的通知徽章示例似乎无法在模拟器中运行。但是,最新版本的Android-O开发人员 preview-3
,徽章会正确显示,如Notification Badges部分所述。
要显示通知徽章,您需要将通知频道的setShowBadge(boolean)设置为true
。默认情况下,徽标将显示如下:
长按,如果有多个通知,则显示计数。计数根据活动通知自动递增/递减。您也可以使用Notification.Builder.setNumber()手动调整计数。
示例显示长按启动器图标时的通知计数:
确保您定位的是最新的API:
compileSdkVersion 26
buildToolsVersion "26.0.0"
targetSdkVersion 26
在像素Android模拟器版本26.1.1
中测试。