在 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) 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);
通知徽章示例Android-O
在早期预览版本中似乎不适用于模拟器。但随着 Android-O 开发者的最新版本preview-3
徽章正确显示,如文档中所述通知徽章 https://developer.android.com/preview/features/notification-badges.html部分。
要显示通知徽章,您需要设置设置显示徽章(布尔值) https://developer.android.com/reference/android/app/NotificationChannel.html#setShowBadge(boolean)通知通道true
。默认情况下,徽章将显示如下:
长按时,如果有多个通知,则会显示计数。计数会根据活动通知自动增加/减少。您还可以使用以下命令手动调整计数Notification.Builder.setNumber() https://developer.android.com/reference/android/app/Notification.Builder.html#setNumber(int).
显示长按启动器图标时的通知计数的示例:
确保您的目标是最新的 API:
compileSdkVersion 26
buildToolsVersion "26.0.0"
targetSdkVersion 26
在 Pixel Android 模拟器版本中测试26.1.1
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)