Решение:
Step1: Создать NotificationChannel
NotificationChannel notificationChannel = new NotificationChannel(channel_id , channel_name, NotificationManager.IMPORTANCE_HIGH);
notificationChannel.enableLights(true);
notificationChannel.enableVibration(true);
notificationChannel.setVibrationPattern(new long[]{100, 200, 300, 400, 500, 400, 300, 200, 400});
Здесь, channel_id и channel_name являются int
и string
переменными соответственно.
Шаг 2: Прикрепите его к NotificationManager
:
NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.createNotificationChannel(notificationChannel);
Шаг 3: Создайте уведомление:
NotificationCompat.Builder notification = new NotificationCompat.Builder(this, "channel_id")
.setContentTitle("Test Title")
.setContentText("Test Message")
.setSmallIcon(R.mipmap.ic_launcher);
Шаг 4: Прикрепить уведомление в том же NotificationManager
объекте
notificationManager.notify(1, notification.build());
Наконец, поставьте галочку, чтобы уведомить, если он выше Android O:
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
....
}
Ссылки и подробности об этом можно найти Здесь
Надеюсь, это поможет.