FATAL EXCEPTION: Firebase-Messaging-Intent-Handle -- java.lang.NoClassDefFoundError

20,293

Solution 1

Solution: ignore

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.

Solution 2

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.

Solution 3

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

Share:
20,293
grolschie
Author by

grolschie

Updated on January 14, 2022

Comments

  • grolschie
    grolschie over 2 years

    I am not using any Firebase or Youtube code/libraries in my project. Yet recently, in Android Pre-Release Reports I am seeing crashes with this:

    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)
    

    Here's another log with more detail, but different problems:

    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)
        ...
    

    Any ideas please?

    I have no idea what dkp: libelements.so" is. Googling shows no results.

    I uploaded a version to Google Play with minifyEnabled and shrinkResources both set to false, yet the Firebase/Youtube errors in Pre-Launch Reports are still obfuscated. And it only affects two devices: Nokia 1 and Huawei P8 青春版.

    When I uploaded the unobfuscated file to Google Play, I was warned that my app contained obfuscated code and that I should upload a map file. I have no idea how the Firebase/Youtube code is in my binary, and looking through my commits there have been no updates to any of my libraries around the time the errors started showing up.

    UPDATE: Marked as fixed again:
    https://issuetracker.google.com/issues/160907013#comment256

  • NovyLevi
    NovyLevi over 3 years
    Are you writing a completely native kotlin/java application or using something cross-platform like flutter?
  • F Chopin
    F Chopin over 3 years
    Completely native java app in android studio
  • NovyLevi
    NovyLevi over 3 years
    Do you have any ideas what else could cause this issue as my andoirdManifest only contains a reference to my flutter mainActivtiy?
  • F Chopin
    F Chopin over 3 years
    I've not used flutter before so the only two things I can think of are: do a search for any remaining references to any classes you've deleted recently, or if possible add firebase crashlytics to your app to get a better crash report.
  • grolschie
    grolschie over 3 years
    Regarding "aewt", thanks. I will upload a version without minify (which my project has used for over 1 year). I checked my androidmanifest.xml, and the last change made was 1 months prior to the errors starting. No changes in gradle.build besides build version numbers. No classes deleted.
  • grolschie
    grolschie over 3 years
    Interestingly, when uploading a version with minify disabled I see this warning: "This App Bundle contains Java/Kotlin code, which might be obfuscated. We recommend that you upload a deobfuscation file to make your crashes and ANRs easier to analyse and debug."
  • grolschie
    grolschie over 3 years
    Only 3 devices are being tested in Play Console - none are the problematic ones. So false alarm on being free of errors.
  • next-hack
    next-hack over 3 years
    Might this issue related to ads? Could they "silently" add some firebase/yt code/library ?
  • grolschie
    grolschie over 3 years
    No ads in my app.
  • Gyuri Majercsik
    Gyuri Majercsik over 3 years
    We also encounter this issue... It fails randomly.
  • grolschie
    grolschie over 3 years
    I get this error and I've never ever used Firebase.
  • Ken Lee
    Ken Lee over 3 years
    Thanks. but is it true that I cannot release my app as long as this problem persists ? (because Pre-launch report overview says "Errors found. Fix before releasing to production."
  • Ken Lee
    Ken Lee over 3 years
    I have submitted an enquiry formally to Play Console support. Let's see what they will reply
  • grolschie
    grolschie over 3 years
    Hi Ken. I had no problem rolling my app out to both Open Testing and also Production. I rolled it out to "99.999%" of my users, that way I can halt the release if I start seeing errors.
  • Ken Lee
    Ken Lee over 3 years
    Thank you. I will try debugging/checking this problem by submitting a barebone App to the Play Console and then add more modules to see what module(s) are causing this problem.
  • Ken Lee
    Ken Lee over 3 years
    Hello All, The result is : even if I submit a barebone APP (just a single page APP showing a few lines of text) and NO OTHER FUNCTIONS , it will have the FATAL EXCEPTION: Firebase-Messaging-Intent-Handle, Process: com.google.android.youtube, error in Huawei P8 . Hence it is for sure not code related. I hope that Google will fix the problem ASAP.
  • ManuelGomes
    ManuelGomes over 3 years
    There is also the possibility, very likely as i have found it also randomly to me, that this error is NOT RELATED to your app at all, and it is an error with youtube app. Are you using any kind of video package in your flutter app that may use youtube somehow?
  • next-hack
    next-hack over 3 years
    By the way Google still did not answer to my support ticket... Glad to know that this is just their fault.
  • grolschie
    grolschie over 3 years
    Thanks for the update, next-hack. That's rather disappointing.
  • Kaiser Keister
    Kaiser Keister over 3 years
    @next-hack Maybe? I've been getting the same error (on Huawei P8 and Nokia 1) on Google Play and the only explanation I can think of is video ads - maybe they play videos hosted on youtube. My app has a banner ad and I have allowed video ads - so this might explain it
  • Joe
    Joe over 3 years
    For me also showing same error. In same devices. It in prelaunch because of this error. Alpha version is not publishing. How to ignore and publish the version alpha testing. The app is publishing for first time.
  • phoenixstudio
    phoenixstudio over 3 years
    Do you think that the new version of google services are using firebase for analytics or crash report, and it contain a bug that's caussing this issue ?
  • Abdo21
    Abdo21 over 3 years
    @phoenixstudio The problem is not in the firbase library but I think in the google play service itself, when it tries to replace the old application with the new one, somehow this operation does not happen correctly. It's just a guess I'm not sure.