Notification在android 8.0以上设置时,需要设置渠道信息才能够正常显示通知,在这里和大家做个分享:
String id = "channel_001";
String name = "name";
NotificationManager notificationManager = (NotificationManager) context.getSystemService(NOTIFICATION_SERVICE);
Notification notification = null;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
NotificationChannel mChannel = new NotificationChannel(id, name, NotificationManager.IMPORTANCE_LOW);
notificationManager.createNotificationChannel(mChannel);
notification = new Notification.Builder(context)
.setChannelId(id)
.setContentTitle("活动")
.setContentText("您有一项新活动")
.setSmallIcon(R.drawable.app_logo).build();
} else {
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(context)
.setContentTitle("活动")
.setContentText("您有一项新活动")
.setSmallIcon(R.drawable.app_logo)
.setOngoing(true)
.setChannelId(id);//无效
notification = notificationBuilder.build();
}
notificationManager.notify(1, notification);