Как преобразовать уведомление в текущий тип, используя FLAG_ONGOING_EVENT

Я заметил, что есть 2 различных типа уведомлений, которые появляются в верхней части экрана в устройствах Android. Один из них "Текущий", а другой - "Уведомления". Я хотел бы изменить свое уведомление на текущий тип. Некоторые исследования показали, что мне нужно установить флаг: Notification.FLAG_ONGOING_EVENT. Как бы я сделал это в следующем коде и есть ли что-то еще, что мне нужно сделать, чтобы изменить его на "текущий" тип?

     NotificationCompat.Builder mBuilder =
                new NotificationCompat.Builder(AudioService.this)
                .setSmallIcon(R.drawable.ic_launcher)
                .setContentTitle("My notification")
                .setContentText("Hello World!");
        // Creates an explicit intent for an Activity in your app
        Intent resultIntent = new Intent(AudioService.this, MainActivity.class);

        // The stack builder object will contain an artificial back stack for the
        // started Activity.
        // This ensures that navigating backward from the Activity leads out of
        // your application to the Home screen.
        TaskStackBuilder stackBuilder = TaskStackBuilder.create(AudioService.this);
        // Adds the back stack for the Intent (but not the Intent itself)
        stackBuilder.addParentStack(MainActivity.class);
        // Adds the Intent that starts the Activity to the top of the stack
        stackBuilder.addNextIntent(resultIntent);
        PendingIntent resultPendingIntent =
                stackBuilder.getPendingIntent(
                    0,
                    PendingIntent.FLAG_UPDATE_CURRENT
                );
        mBuilder.setContentIntent(resultPendingIntent);
        NotificationManager mNotificationManager =
            (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
        // mId allows you to update the notification later on.
        mNotificationManager.notify(mId, mBuilder.build());

1 ответ

Решение

В Builder есть метод setOngoing.

 NotificationCompat.Builder mBuilder =
                    new NotificationCompat.Builder(AudioService.this)
                    .setSmallIcon(R.drawable.ic_launcher)
                    .setContentTitle("My notification")
                    .setContentText("Hello World!")
                    .setOngoing(true);
Другие вопросы по тегам