android - servicio - Eliminar notificación después de hacer clic
quitar notificacion sin servicio de datos android (3)
Deseo que la notificación se cierre después de que el usuario haga clic en ella. Vi que todos decían usar banderas, pero no puedo encontrar las banderas en ninguna parte porque estoy usando la clase NotificationCompat.Builder y no la clase de notificación. ¿Alguien tiene alguna idea de cómo hacer que la notificación se elimine sola?
Aquí está mi código cuando estoy configurando la notificación:
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());
Fácil, simplemente llama esto:
mBuilder.setAutoCancel(true);
Además, si bien no es realmente necesario, si realmente desea usar FLAG_AUTO_CANCEL
, simplemente llame antes de llamar a mNotificationManager.notify
:
mBuilder.getNotification().flags |= Notification.FLAG_AUTO_CANCEL;
Prueba esto....
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());
Puede agregar un indicador a su notificación:
http://developer.android.com/reference/android/app/Notification.html#FLAG_AUTO_CANCEL
Esto lo descartará al hacer clic.