致命的な例外:Firebase-Messaging-Intent-Handle — java.lang.NoClassDefFoundError

Nov 06 2020

プロジェクトでFirebaseまたはYoutubeのコード/ライブラリを使用していません。しかし最近、Androidのプレリリースレポートで、これでクラッシュが発生しています。

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)

詳細は別のログですが、問題は異なります。

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

何かアイデアはありますか?

dkp: libelements.so「」が何であるかわかりません。グーグルは結果を示しません。

私はGoogleのプレイへのバージョンをアップロードminifyEnabledし、shrinkResources両方のセットにfalse、まだ発売前のレポートでFirebase / YouTubeのエラーがまだ難読化されています。また、Nokia1とHuaweiP8青春版の2つのデバイスにのみ影響します。

難読化されていないファイルをGooglePlayにアップロードすると、アプリに難読化されたコードが含まれているため、マップファイルをアップロードする必要があるという警告が表示されました。Firebase / Youtubeコードがバイナリにどのように含まれているかわかりません。コミットを確認すると、エラーが表示され始めた頃には、どのライブラリも更新されていません。

更新:

この問題は、このバグレポートに追加されました。
https://issuetracker.google.com/issues/160907013

回答

27 grolschie Nov 15 2020 at 05:54

解決策:無視する

すべての兆候は、これがGoogle Playのリリース前レポートの問題であり、コードの問題ではないことを示しています。

編集:Googleの製品およびエンジニアリングチーム https://issuetracker.google.com/issues/160907013#comment25問題の。しかし、問題の規模を理解するために、さらに数人が必要になる可能性があります。おそらく、バグレポートに投稿することを検討してください。

6 DanielVega Nov 09 2020 at 07:58

また、Android Studioを使用してJavaで開発されたアプリケーションの新しいバージョンを公開しようとすると、同じ問題が発生します。起動前に、Android 5.0(SDK 21)を搭載したHuaweiP8青春版デバイスでエラーが表示されます。エラーは次のとおりです。

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)

しかし、完全なログをダウンロードすると、アプリケーションが起動する前にエラーが表示されることがわかりました。

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

しかし、グーグルがテストのために作成したビデオでは、アプリケーションが失敗することはなく、06:57:07に開始することがはっきりとわかるため、時間が一致しません。

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.

レジストリを詳細に確認してください。同じ場合は、Googleがテストデバイスで問題を修正するか、アプリケーションを公開するのを待つしかなく、そのデバイスを使用している一部のユーザーにも同じエラーが発生します。

3 Karl Nov 06 2020 at 19:08

私にとって、これはクラスを削除したために発生していましたが、AndroidManifest.xmlでそのクラスへの参照を削除するのを忘れていました。

AndroidManifest.xmlに目を通し、存在しないクラスを参照していないことを確認します。クラスは赤で表示される可能性がありますが、驚くべきことに、プロジェクトは引き続きビルドされます。

ビルドの縮小/難読化のため、名前はaewtとして表示される可能性があります。エラーメッセージがYouTubeを参照している理由はまったくわかりません。アプリでYouTubeを使用していない場合も同様です。

プレリリースレポートのクラッシュログはまったく役に立ちませんでしたが、firebasecrashlyticsのクラッシュログで問題の原因が明らかになりました。

プレリリースレポートが間違いなく確認するのをまだ待っています。これは本日遅くになりますが、firebasecrashlyticsレポートと状況に基づいている可能性が高いようです。

編集:私のプレリリースレポートはこのエラーを表示しなくなり、androidmanifest.xmlからぶら下がっている参照を削除した後完全に通過しています

shanzAD Nov 13 2020 at 15:30

Firebaseの最新のSDKにアップデートした後、この問題が発生しました。問題は、以前にアプリから削除されたサービスの参照を削除していなかったことです。

  • マニフェストを確認し、赤い色で表示される不要な参照削除します

そうすることで、リリース前のレポートからこのエラーを取り除くことができました。