samsung recuperar pantalla ocultar notificaciones iconos estado despliega como bloqueo barra baja activar android cordova notifications statusbar

recuperar - ocultar iconos de la barra de estado android



Cerrar barra de estado cuando se hace clic en la notificación del botón (2)

Ok, lo solucioné

private int currentApiVersion = android.os.Build.VERSION.SDK_INT; ... Object sbservice = context.getSystemService("statusbar"); try { Class<?> statusbarManager = Class.forName("android.app.StatusBarManager"); if (currentApiVersion <= 16) { Method collapse = statusbarManager.getMethod("collapse"); collapse.invoke(sbservice); } else { Method collapse2 = statusbarManager.getMethod("collapsePanels"); collapse2.invoke(sbservice); } } catch (Exception e) { e.printStackTrace(); }

¿Cómo puedo cerrar la barra de estado después de hacer clic en el botón de notificación?

Intenté esto , pero tuve una excepción:

java.lang.NoSuchMethodException: collapse [] at java.lang.Class.getConstructorOrMethod(Class.java:460) at java.lang.Class.getMethod(Class.java:915) ...

Mi código:

NotificationCompat.Builder builder = new NotificationCompat.Builder(context) .setSmallIcon(R.drawable.icon) .setContentTitle("Sync Failed") .setContentText("Lorem ipsum dolor sit amet") .setStyle(new NotificationCompat.BigTextStyle().bigText("Lorem ipsum dolor sit amet")) .addAction(R.drawable.change, "Change Pass", pChangePass) .addAction(R.drawable.remove, "Ignore", pIgnore) .setAutoCancel(false); mNotificationManager.notify(accountUnique, builder.build());

En la clase NotificationIntent

@Override public void onReceive(Context context, Intent intent) { int notificationID = intent.getExtras().getInt("NOT_ID"); this.callbackContext = StatusBarNotification.getCallback(); this.mNotificationManager = StatusBarNotification.getNotificationManager(); this.mNotificationManager.cancel(notificationID); this.callbackContext.success(returnJSON(intent)); }


La siguiente solución debería ser más simple y no se deben usar API no públicas:

Intent it = new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS); context.sendBroadcast(it);