EXCEPCIÓN FATAL: Firebase-Messaging-Intent-Handle - java.lang.NoClassDefFoundError
No estoy usando ningún código / biblioteca de Firebase o Youtube en mi proyecto. Sin embargo, recientemente, en los informes previos al lanzamiento de Android, veo fallas con esto:
FATAL EXCEPTION: Firebase-Messaging-Intent-Handle
Process: com.google.android.youtube, PID: 26820
java.lang.NoClassDefFoundError: aewt
at aewu.b(PG:1)
at duc.a(PG:230)
at duc.get(PG:247)
at aevw.b(PG:1)
at dud.al(PG:5)
at dud.aw(PG:4)
at dud.bg(PG:8)
at duc.a(PG:232)
at duc.get(PG:247)
at afke.a(PG:1)
at aeri.b(PG:1)
at dud.fv(PG:4)
at duc.c(PG:269)
at duc.get(PG:247)
at amfk.a(PG:1)
at eiu.K(PG:5)
at dud.fV(PG:7)
at duc.d(PG:334)
at duc.get(PG:247)
at com.google.android.apps.youtube.app.common.notification.FcmMessageListenerService.b(PG:1)
at com.google.firebase.messaging.FirebaseMessagingService.g(PG:53)
at avgp.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at usj.run(PG:2)
at java.lang.Thread.run(Thread.java:831)
Aquí hay otro registro con más detalles, pero con diferentes problemas:
Process: com.google.android.youtube, PID: 16751
java.lang.NoClassDefFoundError: aewt
[redacted]
at com.google.android.apps.youtube.app.common.notification.FcmMessageListenerService.b(PG:1)
at com.google.firebase.messaging.FirebaseMessagingService.g(PG:53)
at avgp.run(Unknown Source:7)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at usj.run(PG:2)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.ExceptionInInitializerError
[redacted]
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1119)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5767)
at android.app.ActivityThread.-wrap1(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1680)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6523)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:857)
Caused by: dkp: libelements.so
at dks.c(PG:52)
...
¿Alguna idea por favor?
No tengo idea de qué dkp: libelements.soes ". Google no muestra resultados.
Subí una versión a Google Play con minifyEnabledy shrinkResourcesambos configurados false, sin embargo, los errores de Firebase / Youtube en los informes previos al lanzamiento todavía están ofuscados. Y solo afecta a dos dispositivos: Nokia 1 y Huawei P8 青春 版.
Cuando cargué el archivo sin ofuscar en Google Play, me advirtieron que mi aplicación contenía código ofuscado y que debía cargar un archivo de mapa. No tengo idea de cómo está el código de Firebase / Youtube en mi binario, y al revisar mis confirmaciones, no ha habido actualizaciones en ninguna de mis bibliotecas en el momento en que comenzaron a aparecer los errores.
ACTUALIZAR:
Este problema se ha agregado a este informe de error:
https://issuetracker.google.com/issues/160907013
Respuestas
Solución: ignorar
Todas las señales apuntan a que esto es un problema con los informes previos al lanzamiento de Google Play y no con nuestro código.
Editar: equipos de ingeniería y productos de Google https://issuetracker.google.com/issues/160907013#comment25del problema. Pero parece que podrían necesitar algunas personas más para que tengan una idea de la magnitud del problema. Quizás considere publicar en el informe de errores.
También tengo el mismo problema al intentar publicar una nueva versión de mi aplicación también desarrollada en java con android studio, en el prelanzamiento se muestra un error para el dispositivo Huawei P8 青春 版 con Android 5.0 (SDK 21). El error es el siguiente:
FATAL EXCEPTION: Firebase-Messaging-Intent-Handle
Process: com.google.android.youtube, PID: 27648
java.lang.NoClassDefFoundError: aewt
at aewu.b(PG:1)
at duc.a(PG:230)
at duc.get(PG:247)
at aevw.b(PG:1)
at dud.al(PG:5)
at dud.aw(PG:4)
at dud.bg(PG:8)
at duc.a(PG:232)
at duc.get(PG:247)
at afke.a(PG:1)
at aeri.b(PG:1)
at dud.fv(PG:4)
at duc.c(PG:269)
at duc.get(PG:247)
at amfk.a(PG:1)
at eiu.K(PG:5)
at dud.fV(PG:7)
at duc.d(PG:334)
at duc.get(PG:247)
at com.google.android.apps.youtube.app.common.notification.FcmMessageListenerService.b(PG:1)
at com.google.firebase.messaging.FirebaseMessagingService.g(PG:53)
at avgp.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at usj.run(PG:2)
at java.lang.Thread.run(Thread.java:831)
Pero al descargar el registro completo, encuentro que el error aparece antes de que se inicie la aplicación:
11-08 06:57:29.438: E/AndroidRuntime(27648): FATAL EXCEPTION: Firebase-Messaging-Intent-Handle
11-08 06:57:29.438: E/AndroidRuntime(27648): Process: com.google.android.youtube, PID: 27648
11-08 06:57:29.438: E/AndroidRuntime(27648): java.lang.NoClassDefFoundError: aewt
...
Pero en el video que Google hace para la prueba, la aplicación nunca falla y puedes ver claramente que comienza a las 06:57:07, por lo que los tiempos no coinciden.
1-08 06:59:07.758: W/PGApi_client(3556): recv actoionId = 10000, action = com.huawei.pgmng.PGAction@13714f2a actionId =10000 pkg =com.MYAPP.MYAPP extend1 =0 extend2 = flag =3 type =1
11-08 06:59:07.758: W/PGMiddleWare jhh(3556): in handleAction method, action = 10000
11-08 06:59:07.758: W/PGMiddleWare jhh(3556): in handleAction, invoke client = com.huawei.pgmng.middleware.AudioEffectLowPowerImpl@2725ca70, action = com.huawei.pgmng.PGAction@13714f2a actionId =10000 pkg =com.MYAPP.MYAPP extend1 =0 extend2 = flag =3 type =1
11-08 06:59:07.758: I/AudioEffectLowPowerImpl jhh(3556): jhh handle default mActionId = 10000, action = com.huawei.pgmng.PGAction@13714f2a actionId =10000 pkg =com.MYAPP.MYAPP extend1 =0 extend2 = flag =3 type =1
11-08 06:59:07.758: W/AudioEffectLowPowerImpl jhh(3556): enter into DEFAULT_FRONT Scene.
Consulta el registro en detalle, si es el mismo caso solo nos queda esperar a que google solucione el problema en sus dispositivos de prueba o publique la aplicación y que algún usuario con ese dispositivo tenga el mismo error.
Para mí, esto sucedió porque eliminé una clase, pero olvidé eliminar una referencia a ella en AndroidManifest.xml.
Revise su AndroidManifest.xml y asegúrese de que no haga referencia a clases inexistentes, es probable que se muestren en rojo, pero sorprendentemente el proyecto aún se construirá.
Es probable que el nombre se muestre como aewt debido a la minificación / ofuscación de la compilación. No tengo ni idea de por qué el mensaje de error hace referencia a YouTube, también lo hace para mí cuando no uso YouTube en la aplicación.
El registro de fallas en el informe previo al lanzamiento fue totalmente inútil, pero un registro de fallas en firebase crashlytics reveló la fuente del problema.
Todavía estoy esperando un informe previo al lanzamiento para confirmar sin duda, que tendré más tarde hoy, pero parece muy probable según el informe de firebase crashlytics y las circunstancias.
Editar: Mi informe previo al lanzamiento ya no muestra este error y pasa por completo después de eliminar la referencia colgante de androidmanifest.xml
Tuve este problema después de actualizar al último SDK de firebase. El problema era que no había eliminado la referencia de un servicio que se eliminó previamente de la aplicación.
- verifique su manifiesto y elimine las referencias innecesarias que se mostrarán en color rojo.
Al hacer eso, pude eliminar este error del informe previo al lanzamiento.