programing

다음을 클릭한 후 알림 제거

newsource 2023. 5. 5. 09:46

다음을 클릭한 후 알림 제거

나는 사용자가 알림을 클릭한 후 알림이 닫히기를 원합니다.모두 플래그를 사용하라고 하는데, NotificationCompat을 사용하고 있어서 플래그를 찾을 수 없습니다.작성자 클래스와 알림 클래스가 아닙니다.그녀 혼자서 알림을 제거하는 방법을 아는 사람이 있습니까?
알림을 설정할 때 코드는 다음과 같습니다.

NotificationCompat.Builder mBuilder =
            new NotificationCompat.Builder(this)
            .setSmallIcon(R.drawable.ic_launcher)
            .setContentTitle("New Question")
            .setContentText("" + QuestionData.getAuthor().getUserName() + ": " + QuestionData.getQuestion() + "");

    Intent openHomePageActivity = new Intent("com.example.ihelp.HOMEPAGEACTIVITY");
    TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
    stackBuilder.addNextIntent(openHomePageActivity);

    PendingIntent resultPendingIntent =
            stackBuilder.getPendingIntent(
                0,
                PendingIntent.FLAG_UPDATE_CURRENT
            );
    mBuilder.setContentIntent(resultPendingIntent);
    NotificationManager mNotificationManager =
        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);       

    mNotificationManager.notify(0, mBuilder.build());

쉽게, 간단하게 다음과 같이 부릅니다.

mBuilder.setAutoCancel(true);

또한, 꼭 필요한 것은 아니지만, 정말로 사용하고 싶다면,FLAG_AUTO_CANCEL전화하기 전에 이것만 전화하세요.mNotificationManager.notify:

mBuilder.build().flags |= Notification.FLAG_AUTO_CANCEL;

이것을 시도해보세요.

NotificationManager mNotificationManager =
    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

 ..........
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
            this).setSmallIcon(R.drawable.push_notify_icon)
            .setContentTitle("New Question!")
            .setStyle(new NotificationCompat.BigTextStyle().bigText(msg))
            .setAutoCancel(true).setContentText("" + QuestionData.getAuthor().getUserName() + ": " + QuestionData.getQuestion() + "");
mBuilder.setContentIntent(contentIntent);

    ..............        


mBuilder.getNotification().flags |= Notification.FLAG_AUTO_CANCEL;
mNotificationManager.notify(0, mBuilder.build());

다음은 알림입니다.

    NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
            .setSmallIcon(R.drawable.ic_calendar)
            .setContentTitle("My Firebase Push notification")
            .setContentText(message)
            .setAutoCancel(true)
            .setSound(soundUri)
            .setContentIntent(pendingIntent);

클릭 시 취소할 수 있는 키는 다음과 같습니다.

            .setAutoCancel(true)

나는 그것이 그 문제를 해결하기를 바랍니다.

알림에 플래그를 추가할 수 있습니다.

http://developer.android.com/reference/android/app/Notification.html#FLAG_AUTO_CANCEL

클릭하면 삭제됩니다.

코틀린에서는 다음을 사용할 수 있습니다.

mBuilder.build().flags.and(Notification.FLAG_AUTO_CANCEL)

언급URL : https://stackoverflow.com/questions/15120821/remove-notification-after-clicking