Notificaciones de Remote View de Android
Tengo una barra de notificación de Android que utiliza una vista remota. Tengo 2 botones allí para reproducir y pausar audio y también un icono para volver a la aplicación. Quiero poder hacer clic en el icono (o en cualquier lugar excepto en los 2 botones) y volver a la aplicación. Aquí está mi código
Intent returnIntent = new Intent(_context, SplashScreenActivity.class); returnIntent.setAction(Intent.ACTION_MAIN); returnIntent.addCategory(Intent.CATEGORY_LAUNCHER); PendingIntent remoteViewPendingIntent = PendingIntent.getActivity(_context,1, returnIntent,0); remoteView.setOnClickPendingIntent(R.id.btnAppIcon, remoteViewPendingIntent);
Todo esto funciona bien en el emulador de Android 4.1. Cuando se pulsa el icono de la notificación, se devuelve correctamente a la aplicación. Sin embargo, en Android 4.0.3 en un Samsung S3 la actividad se inicia en segundo plano, pero la pantalla de notificación no está oculta. Quiero que la pantalla de notificación se borre una vez que el icono esté seleccionado. He intentado usar el Notification.FLAG_AUTO_CANCEL en la notificación pero eso no solucionó el problema. Cualquier ayuda sería muy apreciada.
- Android ¿Cómo setWeight de una RemoteView?
- Cómo puedo cambiar el tamaño de texto en RemoteViews
- Obtener el ancho del panel de notificaciones de Android
- ¿Cómo crear una notificación con una vista personalizada, pero con una apariencia nativa?
- RemoteViewsFactory llamado getViewAt cuando el dataset vacío
- Notificación para el reproductor de música android
- RemoteViews setViewVisibility en Android Widget
- Cómo cambiar el atributo 'android: autoStart' de ViewFlipper en RemoteViews mediante programación?
- No se pudo expandir RemoteViews para: StatusBarNotification
- Cómo hacer referencia a una vista en una notificación personalizada
- RemoteView y setGravity
- Color del fondo del framelayout del remoteview
- Cómo cambiar la imagen en el widget de la aplicación mediante programación en android
El comportamiento de .setOnClickPendingIntent varía en MFGs y versiones diferentes como usted ha experimentado.
Para lograr lo que desea y colapsar automáticamente la ventana de notificación automáticamente (sin utilizar la reflexión), debe establecer una intención pendiente "global" para la vista de notificación. Necesitará incluir su R.id.btnAppIcon en esa vista de intención "catch all" también.
Ejemplo de la intención pendiente de notificación "global / default":
contentIntent = PendingIntent.getActivity(YourClass.this, 0, notificationIntent, 0); notification.contentIntent = contentIntent;
La intención de notificación "general" cuando se utiliza con PendingIntent.getActivity se cerrará la ventana de notificación en cualquier dispositivo (como he observado).
- ¿Cómo utilizar WebView para mostrar páginas html en modo lector de libros electrónicos?
- Margen de Android entre los botones del diseño de cuadrícula