Значки уведомлений в Android O
Я тестирую с Google Nexus 5x с Android Oreo SDK. Я не могу найти значки уведомлений в значке приложения на главном экране, даже если я получил уведомление от приложения, а ярлык приложения не показывает Number.The ниже фрагмент:
final NotificationManager mNotific=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
CharSequence name="Ragav";
String desc="this is notific";
int imp=NotificationManager.IMPORTANCE_HIGH;
final String ChannelID="my_channel_01";
NotificationChannel mChannel=new NotificationChannel(ChannelID,name,imp);
mChannel.setDescription(desc);
mChannel.setLightColor(Color.CYAN);
mChannel.canShowBadge();
mChannel.setShowBadge(true);
mNotific.createNotificationChannel(mChannel);
final int ncode=1;
String Body="This is testing notific";
final Notification n= new Notification.Builder(getApplicationContext(),ChannelID)
.setContentTitle(getPackageName())
.setContentText(Body)
.setNumber(5)
.setBadgeIconType(R.mipmap.ic_launcher_round)
.setSmallIcon(R.mipmap.ic_launcher_round)
.setAutoCancel(true).build();
for(int i=0;i<25;i++) {
Thread.sleep(1000);
mNotific.notify(ncode, n);
}
1 ответ
Вы не можете настроить внешний вид значков уведомлений (точек), которые отображаются на значке запуска вашего приложения. Тем не менее, вы можете настроить некоторые элементы меню длительного нажатия, когда вы нажимаете кнопку запуска вашего приложения, .setNumber(5)
то, что вы пробовали, появится там, например.
Обратитесь сюда для получения дополнительной информации: значки уведомлений и настройка значков уведомлений.
Ссылаясь на .setBadgeIconType(R.mipmap.ic_launcher_round)
Я бы посоветовал вам прочитать это.
** РЕДАКТИРОВАТЬ ** (вопрос неправильно понят)
Я проверил ваш код (без for
цикл, вызов mNotific.notify(ncode, n);
только один раз) на эмуляторе Nexus 5X, и он работает на 100% с отображением точек уведомлений. Это не проблема, связанная с кодом.
Собственное приложение запуска физического устройства Nexus 5X (Google Now) не поддерживает точки уведомлений, даже если вы можете включить точки уведомлений в настройках Oreo на устройстве. Обратитесь к этой и этой ссылке. Чтобы включить точки уведомлений на физическом устройстве Nexus 5X, вам необходимо установить специальное приложение Pixel Launcher, например, этот Rootless Pixel Launcher.