Cómo cerrar la bandeja de notificación mediante programación
Quiero compartir el elemento de notificación de GCM. El botón de compartir responde a los eventos de clic y el elemento también se comparte. El único problema aquí es que el diálogo de selección de intenciones está presente debajo de la bandeja de notificación. El usuario tiene que cerrar manualmente la barra de estado y luego seleccionar la aplicación para compartir. Quiero cerrar la barra de estado mediante programación, de modo que cuando el usuario haga clic en compartir, le muestre directamente el diálogo para elegir las aplicaciones.
Me pareció que el servicio de status bar
se puede utilizar para abrir / cerrar el servicio. Pero está restringido para las aplicaciones del sistema.
- Android: barra de estado no tema en la transición a nueva actividad
- setfitsystemwindows no funciona windowtranslucentstatus coordinatorlayout
- ¿Cómo abrir o expandir la barra de estado a través de la intención?
- Android: Barra de estado transparente con colores dinámicos de la acciónBar y DrawerLayout
- Barra de estado transparente de Android y barra de acción
private void closeNotificationTray() { Object service = mContext.getSystemService(Context.STATUS_BAR_SERVICE); Method collapse; try { Class<?> statusBarMngr = Class.forName("android.app.StatusBarManager"); if (Build.VERSION.SDK_INT >= 17) collapse = statusBarMngr.getMethod("collapsePanels"); else collapse = statusBarMngr.getMethod("collapse"); collapse.invoke(service); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (NoSuchMethodException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); }
He utilizado el código anterior. Pero estoy recibiendo "STATUS_BAR_SERVICE no se puede resoloved" error. Y cuando agregué la permision inferior en el manifiesto:
<uses-permission android:name="android.permission.STATUS_BAR" />
Estoy recibiendo, permitido sólo para las aplicaciones del sistema. No me está permitiendo usar en mi aplicación. ¿Hay alguna manera de usar el servicio de status bar
o cualquier otra alternativa?
Actualizar:
He resuelto el problema anterior con sólo 2 líneas de código. No es necesario llamar a STATUS_BAR_SERVICE.
Intent it = new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS); mContext.sendBroadcast(it);
Al llamar a esta intención se cerrará automáticamente la notificación
;
- Cómo aumentar la altura de remoteview en la notificación android
- Ocultar barra del sistema de la tableta
- Android: theme = "@ android: style / Theme.NoTitleBar.Fullscreen" funciona en nivel de aplicación pero no en el nivel de actividad. ¿Cualquier pista?
- Cajón de navegación de estilo de material, el color de la barra de estado se pone demasiado oscuro
- Barra de estado El color no se muestra - 5.0 Lollipop Android Studio: (AppCompat-v7: r21)
- Fragmento de diálogo de pantalla completa de Android como aplicación de calendario
- CoordinatorLayout no dibuja detrás de la barra de estado incluso con windowTranslucentStatus y fitsSystemWindows
- Necesita una barra de estado completamente transparente
Sí, este permiso "android.permission.STATUS_BAR" está disponible sólo para aplicaciones de sistema, no para aplicaciones de terceros.
Usted puede intentar debajo del método:
- Cree una cierta notificación pasando la intención pendiente hacia ella.
- Crear intención pendiente con acción como acción. Ahora usted podrá utilizar la opción de acciones.
@ Amanda Fernández puedes probar por encima del método
- ¿Es posible usar GPUImageView / GLSurfaceview en la vista de reciclador?
- Mensajes confiables de GPGS que no llegan a otro jugador