React-native-onesignal: [CRASH] [ANDROID] Intento de invocar el método virtual 'boolean android.app.NotificationChannel.isDeleted ()' en una referencia de objeto nulo

Creado en 23 ene. 2021  ·  8Comentarios  ·  Fuente: OneSignal/react-native-onesignal

Descripción:

Crash en Android informado por crashlytics de algunos usuarios.

Ambiente
Paquetes

"react": "16.13.1",
"react-native": "0.63.4",
"react-native-onesignal": "^4.0.3",

Dispositivo

Android: 8
Devices: HUAWEI P10 lite,  Sasmung Galaxy S8

Pasos para reproducir el problema:
Reciba una notificación push OneSignal.
No tengo más información.

Algo más:

Error

Fatal Exception: java.lang.NullPointerException
Attempt to invoke virtual method 'boolean android.app.NotificationChannel.isDeleted()' on a null object reference

Seguimiento de pila

Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.app.NotificationChannel.isDeleted()' on a null object reference
       at android.os.Parcel.readException(Parcel.java:1960)
       at android.os.Parcel.readException(Parcel.java:1900)
       at android.app.INotificationManager$Stub$Proxy.getNotificationChannels(INotificationManager.java:1618)
       at android.app.NotificationManager.getNotificationChannels(NotificationManager.java:515)
       at com.onesignal.NotificationChannelManager.processChannelList(NotificationChannelManager.java:236)
       at com.onesignal.OneSignal$5.complete(OneSignal.java:970)
       at com.onesignal.OneSignalRemoteParams.processJson(OneSignalRemoteParams.java:205)
       at com.onesignal.OneSignalRemoteParams.access$100(OneSignalRemoteParams.java:12)
       at com.onesignal.OneSignalRemoteParams$1.onSuccess(OneSignalRemoteParams.java:150)
       at com.onesignal.OneSignalRestClient$5.run(OneSignalRestClient.java:269)
       at java.lang.Thread.run(Thread.java:784)
Help Wanted Possible Bug

Comentario más útil

Hola,
Tengo el mismo problema. Un usuario sufrió alrededor de 218 bloqueos en un solo día en Crashlytics.
Marca del dispositivo - Oppo
Versión OS - 9
Seguimiento de pila
com.onesignal.NotificationChannelManager.processChannelList
Excepción fatal: java.lang.NullPointerException: intento de invocar el método virtual 'boolean android.app.NotificationChannel.isDeleted ()' en una referencia de objeto nulo

¿Hay alguna solución todavía?

Todos 8 comentarios

¿tiene?

Hola,
Muchas gracias por el seguimiento de la pila.

@Jeasmine viene de aquí .

Desde un nivel superficial, parece que OneSignal Notification Manager está rastreando referencias a canales que en algún momento se eliminan y, por lo tanto, son nulos.

Tendremos que profundizar un poco más en esto.

Gracias por reportar esto.

@Jeasmine @rgomezp Otro informe de esto en Native Android SDK com. oneSignal: OneSignal : [4.0.0, 4.99.99]
99% de fallas en Samsung Galaxy SM-G950F (Android 9) (solo 1 usuario)
Desafortunadamente, no conozco los pasos para reproducir.

1 - Intenté deshabilitar un grupo de aplicaciones en mi dispositivo y enviar push, pero no fallé.
2 - Intenté guardar el android_channel_id en mis solicitudes de API, eliminar el ID, sin bloqueo
3 - Intenté cambiar el nombre de android_channel_id, sin cambios

@kperreau @ luan-nvg ¿Alguna otra idea sobre lo que trataste de ayudarnos a reproducir?

¿Está utilizando identificadores de canal de Android personalizados o identificadores de canal de Android OneSignal?

Hola, también tengo el mismo problema, pero mi aplicación se ejecuta en el SDK nativo de Android, no hay ningún problema abierto, así que comentaré aquí. Aquí hay información sobre el problema que me ocurre:

  1. OneSignal SDK es 4.0.0
  2. El dispositivo es Android 9, Oppo Realme C1, el 90% ocurre en segundo plano, actualmente, ocurrieron 87 eventos, y solo este usuario
  3. No sé cómo reproducirlo, ya que es un usuario muy pequeño y no tenemos el dispositivo para probar.
  4. La parte del código que causa el problema es la misma que @rgomezp mencionada anteriormente

¿Hay algo que pueda hacer para manejarlo o atraparlo por ahora? Muy preocupado por ver la ocurrencia del accidente, gracias.

Hay noticias ? Recibí una mala crítica en Play Store debido a este bloqueo.
El usuario de Samsung S8 (Android 9) sufrió un bloqueo instantáneo al inicio.

@ jfishman1 Estoy usando identificadores personalizados de canales de Android.

Hola,
Tengo el mismo problema. Un usuario sufrió alrededor de 218 bloqueos en un solo día en Crashlytics.
Marca del dispositivo - Oppo
Versión OS - 9
Seguimiento de pila
com.onesignal.NotificationChannelManager.processChannelList
Excepción fatal: java.lang.NullPointerException: intento de invocar el método virtual 'boolean android.app.NotificationChannel.isDeleted ()' en una referencia de objeto nulo

¿Hay alguna solución todavía?

Hola @rgomezp ,
¿Alguna actualización sobre esto todavía? Tuve alrededor de 2-3k bloqueos hasta la fecha debido a este problema Mis informes de Crashlytics están en mal estado debido a esto. Proporcione una solución.

¿Fue útil esta página
0 / 5 - 0 calificaciones