Creé satisfactoriamente una notificación enriquecida personalizada para Android> = 3.0 que muestra texto y un botón adicional. Si hace clic en la notificación en cualquier lugar que no sea el botón en el menú desplegable de notificaciones, se descarta la notificación, se cierra el menú desplegable y se inicia el Intento especificado como se esperaba. Si se hace clic en el botón dedicado en la notificación, se inicia con éxito un Intento diferente, pero el menú desplegable permanece abierto (y la notificación sigue allí, pero la cancelo más tarde, ese no es el problema). Intent lanza una actividad que aparece detrás del menú desplegable de notificaciones.¿Cómo cerrar el menú desplegable de notificaciones en Android> = 3.0 desde notificaciones enriquecidas personalizadas con un botón adicional?
Lo que me gusta lograr es mantener todo el comportamiento actual tal como se describe, pero también cerrar el menú desplegable de notificaciones desde el botón Intento que se inicia, ¿es esto posible? Alternativamente, sería suficiente si la Actividad del botón Intención gana el foco de la ventana.
Aquí el código de la notificación personalizada, si eso ayuda:
Notification.Builder builder = new Notification.Builder(main)
.setSmallIcon(R.drawable.notification)
.setAutoCancel(true)
.setTicker(text)
.setContentIntent(...);
RemoteViews layout = new RemoteViews(
main.getPackageName(), R.layout.notification);
layout.setTextViewText(R.id.title, title);
layout.setTextViewText(R.id.text, text);
Intent i = new Intent(
"snooze", null, main, Snooze.class
);
i.putExtra(KEY_WIDGET_ID, widgetId);
layout.setOnClickPendingIntent(R.id.notification_zzz, PendingIntent.getActivity(main, 0, i, PendingIntent.FLAG_UPDATE_CURRENT));
builder.setContent(layout);
...
NotificationManager nm =
(NotificationManager)main.getSystemService(Context.NOTIFICATION_SERVICE);
nm.notify(0, builder.getNotification());
¿Ha resuelto este problema o ha cambiado el diseño de su aplicación? – Hunt
Para Android 3.0 a 4.0 no encontré una solución. Pero como se mencionó anteriormente para Android 4.1 y superior, hay un mecanismo incorporado para acciones adicionales que también cerraría el menú desplegable y esto es lo que estoy usando. Puede encontrar más detalles aquí: http://developer.android.com/guide/topics/ui/notifiers/notifications.html#Actions – mdiener