FATAL EXCEPTION: Firebase-Messaging-Intent-Handle -- java.lang.NoClassDefFoundError
All signs point to this being a problem with Google Play's Pre-launch Reports and not our code.
Edit: Google's product and engineering teams are now aware of the issue. But it seems they might need a few more people to give them a sense of the scale of the issue. Perhaps consider posting on the bug report.
Update: Google have fixed it now by adding a filter for the process. See comment 256 on the bug report.
I have uploaded a few versions of my app and the problem is now gone.
I also have the same problem when trying to publish a new version of my application also developed in java with android studio, in the pre launch an error is shown for the Huawei P8 青春 版 device with Android 5.0 (SDK 21). The error is as follows:
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)
But when downloading the full log I find that the error appears before the application starts:
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 ...
But in the video that google makes for the test the application never fails and you can clearly see that it starts at 06:57:07, so the times don't match.
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.
Check the registry in detail, if it is the same case we can only wait for google to fix the problem on their test devices or publish the application and that some user with that device has the same error.
For me, this was happening because I deleted a class, but forgot to remove a reference to it in AndroidManifest.xml.
Go through your AndroidManifest.xml and make sure it doesn't reference any non-existent classes, they will likely show as red, but surprisingly the project will still build.
The name is likely showing as aewt because of build minification / obfuscation. I have absolutely no idea why the error message references youtube, it does for me too when I don't use youtube in the app.
The crash log in the pre-release report was totally useless, but a crash log in firebase crashlytics revealed the source of the issue.
I'm still waiting for a pre-release report to undoubtedly confirm, which I'll have later today, but it seems highly likely based on the firebase crashlytics report and the circumstances.
Edit: My pre-release report is no longer showing this error and is totally passing after removing the hanging reference from the androidmanifest.xml