How to get a heads up notification.With below code i can only see three dots on status bar and a notification in notification bar.
Intent intent = new Intent(this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0 , intent,PendingIntent.FLAG_ONE_SHOT);
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.bip);
Uri defaultSoundUri=RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.bip)
.setContentTitle("Temp")
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setContentText(message)
.setAutoCancel(true)
.setSound(defaultSoundUri)
.setContentIntent(pendingIntent);
NotificationManager notificationManager =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(0, notificationBuilder.build());
This code works for me:
I was having the same problem, but I was using the newer
NotificationCompat.Builder()
call which requires a channel ID from aNotificationChannel
.The notification will only appear as a heads-up notification if the
NotificationChannel
is created with an importance value ofNotificationManager.IMPORTANCE_HIGH
:Show the heads-up notification: