20

ここで、自動キャンセルが機能しない他のすべての質問を調べましたが、それらはすべて、私が犯していない間違いを含んでいるようです. 私は両方を試しました

builder.setAutoCancel(true);

Notification notif = builder.build();
notif.flags |= Notification.FLAG_AUTO_CANCEL;

どちらも機能しません。

最小 API が 8 であるため、NotificationCompat を使用しています。これが私の完全なコードです。この特定の通知では、ユーザーが何もする必要がないため、インテントを呼び出していません。

NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
builder.setContentTitle(getString(R.string.app_name) + ": my title");
builder.setContentText(message);
builder.setSmallIcon(R.drawable.notification_icon);

Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.prog_icon);
builder.setLargeIcon(bitmap);

builder.setAutoCancel(true); // dismiss notification on user click

NotificationManager notiManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
notiManager.notify(MY_NOTI_MANAGER_ID, builder.build());

通知は完全に表示されます。スワイプしてクリアできます。ただし、タップするだけでは通知は消えません。点灯してそこにとどまるだけです。

ここに投稿された私のコードと他のコードとの違いの可能性: 2) 私の通知は簡単なので、インテントは付けません。

お気づきの点がございましたら、お知らせください。

編集:私の目的は、バックグラウンド アプリをフォアグラウンドにせずに通知を閉じることです。

4

3 に答える 3