Android уведомление не исчезает после нажатия на уведомление
Если есть некоторые проблемы с уведомлением, я хочу показать в панели уведомлений. Хотя я установил флаг уведомления в Notification.DEFAULT_LIGHTS & Notification.FLAG_AUTO_CANCEL
уведомление не исчезает после нажатия на него. Есть идеи, что я делаю неправильно?
NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
int icon = R.drawable.icon;
CharSequence tickerText = "Ticker Text";
long time = System.currentTimeMillis();
Notification notification = new Notification(icon, tickerText, time);
notification.flags = Notification.DEFAULT_LIGHTS & Notification.FLAG_AUTO_CANCEL;
Context context = getApplicationContext();
CharSequence contentTitle = "Title";
CharSequence contentText = "Text";
Intent notificationIntent = new Intent(this, SilentFlipConfiguration.class);
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
mNotificationManager.notify(1,notification);
6 ответов:
при строительстве
Notification
byNotificationBuilder
можно использоватьnotificationBuilder.setAutoCancel(true);
.
notification.flags = Notification.DEFAULT_LIGHTS | Notification.FLAG_AUTO_CANCEL
из документации:
бит должен быть побитовым -илиed в поле флаги, которые должны быть установлены если уведомление должно быть отменено при нажатии пользователем
// Uses the default lighting scheme notification.defaults |= Notification.DEFAULT_LIGHTS; // Will show lights and make the notification disappear when the presses it notification.flags |= Notification.FLAG_AUTO_CANCEL | Notification.FLAG_SHOW_LIGHTS;
2016 состояние: вы можете использовать
mBuilder.setAutoCancel(true)
.Источник: https://developer.android.com/reference/android/app/Notification.Builder.html
используйте уведомление о флаге.FLAG_AUTO_CANCEL
Notification notification = new Notification(icon, tickerText, when); notification.setLatestEventInfo(context, contentTitle, contentText, pendingIntent); // Cancel the notification after its selected notification.flags |= Notification.FLAG_AUTO_CANCEL;
и чтобы запустить приложение:
NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); Intent intent = new Intent(context, App.class); PendingIntent pendingIntent = PendingIntent.getActivity(context, intent_id, intent, PendingIntent.FLAG_UPDATE_CURRENT);