Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


NotificationListenerService: NullPointerException en getActiveNotifications

Estoy tratando de implementar el NotificationListenerService en mi aplicación de acuerdo con este tutorial: http://www.kpbird.com/2013/07/android-notificationlistenerservice.html , pero estoy teniendo una NullPointerException al llamar a getActiveNotifications.

Caused by: java.lang.NullPointerException at android.os.Parcel.readException(Parcel.java:1437) at android.os.Parcel.readException(Parcel.java:1385) at android.app.INotificationManager$Stub$Proxy.getActiveNotificationsFromListener(INotificationManager.java:500) at android.service.notification.NotificationListenerService.getActiveNotifications(NotificationListenerService.java:149) at com.rootsoft.rsnotificationservice.RSNotificationService.activeNot(RSNotificationService.java:85) at com.rootsoft.rsnotificationservice.RSNotificationService.access$0(RSNotificationService.java:81) at com.rootsoft.rsnotificationservice.RSNotificationService$1.onReceive(RSNotificationService.java:105) at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:763) ... 9 more 

Estoy enviando una transmisión al servicio que debería generar una lista de todas las notificaciones:

  • Cambiar el tamaño de un mapa de bits a un valor fijo, pero sin cambiar la relación de aspecto
  • La consulta de jabón con jQuery / Phonegap siempre falla en Android
  • No hay una versión en caché de com.android.tools.build:gradle:0.9.1 disponible para el modo sin conexión
  • Android - ¿Cómo establecer el estilo de botón de forma programática en un Linearlayout?
  • Diálogo de PreferenciasActividad de Android con el selector de números
  • Cómo insertar una nueva línea en cadenas en Android
  •  private void activeNot () { List l = new List(); l.Initialize(); for (StatusBarNotification sbn : getActiveNotifications() ) { <---- Error happens here l.Add(sbn); } Log.i("B4A", "List created."); } } 

  • Android obtiene el idioma del dispositivo
  • DatePickerDialog con el tema Holo Light?
  • La vista de desplazamiento de Android dentro de otra vista de desplazamiento no se desplaza
  • ¿Hay de todos modos para intercambiar o reordenar fragmento BackStack entrada?
  • ¿Cómo puedo encontrar todos los métodos no utilizados de mi proyecto en Android Studio IDEA?
  • Sólo el subproceso original que creó una jerarquía de vistas puede tocar sus vistas. En android
  • 3 Solutions collect form web for “NotificationListenerService: NullPointerException en getActiveNotifications”

    EDIT: Desde entonces he aprendido más sobre esto y lo consiguió trabajando!

    NOTA: Primero, asegúrese de haber habilitado su aplicación en el panel de configuración de Notification Access de su dispositivo Android.

    Tenía exactamente el mismo problema hasta ahora. Resulta que sobreponerse a onBind es peligroso. Si anula onBind , tiene que devolver el mismo IBinder que super.onBind(intent) . Si desea devolver su propia carpeta personalizada, asegúrese de utilizar una intención única y devuelva su carpeta personalizada cuando se recibe la intención personalizada.

     @Override public IBinder onBind(Intent intent) { if (intent.getAction().equals("custom_intent")) { return customBinder; } else { return super.onBind(intent); } } 

    El sistema llama a Bind en su servicio, una vez que le haya concedido permiso para leer Notificaciones. Si su onBind devuelve un archivador personalizado al sistema, el sistema no le dará las notificaciones y podría dar lugar a Null Pointer o Security Exceptions.

    Espero que esto ayudó!

    No llame al método getActiveNotification en onCreate o onBind directamente. Debido a que el onBind llamará a la super.onBind para inicializar, por lo que puede utilizar el controlador para reemplazar. Aquí está mi demostración: https://github.com/yihongyuelan/NotificationListenerServiceDemo

    Me pasó cuando intenté iniciar el servicio con startService (). ¡Estaba equivocado! El sistema lo hace por usted cuando el usuario permite que su aplicación escuche las notificaciones

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.