Android 8 和 9 上未显示通知
Notifications are not shown on Android 8 and 9
我正在开发一个包含通知的 Android
应用程序。我已经尝试了新的 Android 8
通知代码:
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(context, "Channel"+notificationId)
.setSmallIcon(R.drawable.ic_notification_logo)
.setContentTitle(notification.getTitle())
.setContentText(notification.getBody())
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setContentIntent(pendingIntent)
.setChannelId("Channel"+notificationId);
NotificationManager notificationManager =
(NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
String CHANNEL_ID = "Channel" + notificationId;// The id of the channel.
CharSequence name = "MyApp";// The user-visible name of the channel.
int importance = NotificationManager.IMPORTANCE_HIGH;
NotificationChannel mChannel = new NotificationChannel(CHANNEL_ID, name, importance);
notificationManager.createNotificationChannel(mChannel);
}
notificationManager.notify(notificationId, notification);
但仍然不起作用,8 和 9 上都没有显示任何通知。
我相信你需要更换
notificationManager.notify(notificationId, notification);
和
notificationManager.notify(notificationId, notificationBuilder.build());
使其发挥作用。
我正在开发一个包含通知的 Android
应用程序。我已经尝试了新的 Android 8
通知代码:
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(context, "Channel"+notificationId)
.setSmallIcon(R.drawable.ic_notification_logo)
.setContentTitle(notification.getTitle())
.setContentText(notification.getBody())
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setContentIntent(pendingIntent)
.setChannelId("Channel"+notificationId);
NotificationManager notificationManager =
(NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
String CHANNEL_ID = "Channel" + notificationId;// The id of the channel.
CharSequence name = "MyApp";// The user-visible name of the channel.
int importance = NotificationManager.IMPORTANCE_HIGH;
NotificationChannel mChannel = new NotificationChannel(CHANNEL_ID, name, importance);
notificationManager.createNotificationChannel(mChannel);
}
notificationManager.notify(notificationId, notification);
但仍然不起作用,8 和 9 上都没有显示任何通知。
我相信你需要更换
notificationManager.notify(notificationId, notification);
和
notificationManager.notify(notificationId, notificationBuilder.build());
使其发挥作用。