122

我没有在我的项目中使用任何 Firebase 或 Youtube 代码/库。然而最近,在 Android Pre-Release Reports 中,我看到了崩溃:

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 Play,minifyEnabled并且shrinkResources都设置为false,但预发布报告中的 Firebase/Youtube 错误仍然被混淆了。它只影响两款设备:诺基亚 1 和华为 P8 青春版。

当我将未混淆的文件上传到 Google Play 时,我被警告说我的应用程序包含混淆代码,我应该上传地图文件。我不知道 Firebase/Youtube 代码是如何在我的二进制文件中的,并且在查看我的提交时,在错误开始出现时,我的任何库都没有更新。

更新: 再次标记为已修复:
https ://issuetracker.google.com/issues/160907013#comment256

4

8 回答 8

83

解决方法:忽略

所有迹象都表明这是 Google Play 发布前报告的问题,而不是我们的代码。

编辑: 谷歌的产品和工程团队现在已经意识到了这个问题。但似乎他们可能需要更多的人来让他们了解问题的严重性。也许考虑在错误报告上发布。

更新: 谷歌现在通过为流程添加过滤器来修复它。请参阅关于错误报告的评论 256 。

我已经上传了我的应用程序的几个版本,现在问题已经消失了。

于 2020-11-14T22:54:13.030 回答
10

我在尝试发布我的应用程序的新版本时也遇到了同样的问题,该版本也是用 android studio 用 java 开发的,在预启动中,使用 Android 5.0(SDK 21)的华为 P8 青春版设备显示错误。错误如下:

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.

详细检查注册表,如果是相同的情况,我们只能等待谷歌在他们的测试设备上修复问题或发布应用程序,并且该设备的某些用户有相同的错误。

于 2020-11-09T00:58:53.453 回答
3

对我来说,这是因为我删除了一个类,但忘记在 AndroidManifest.xml 中删除对它的引用。

浏览您的 AndroidManifest.xml 并确保它没有引用任何不存在的类,它们可能会显示为红色,但令人惊讶的是该项目仍将构建。

由于构建缩小/混淆,该名称可能显示为 aewt。我完全不知道为什么错误消息引用了 youtube,当我不在应用程序中使用 youtube 时,它​​也适用于我。

预发布报告中的崩溃日志完全没有用,但 firebase crashlytics 中的崩溃日志揭示了问题的根源。

我仍在等待一份预发布报告来毫无疑问地确认,我将在今天晚些时候发布,但根据 firebase crashlytics 报告和情况,这似乎很有可能。

编辑:我的预发布报告不再显示此错误,并且在从 androidmanifest.xml 中删除悬挂引用后完全通过

于 2020-11-06T12:08:04.503 回答
0

对我来说,这是因为标题和消息是一个空字符串。

于 2022-01-13T21:31:50.683 回答
0

从支持的设备列表中删除诺基亚 1 应该会有所帮助

于 2020-12-22T03:30:40.990 回答
0

我认为该问题与 Firebase 库无关,因为许多未使用 Firebase 库的用户都会遇到此问题,经过几天尝试了解此问题后,我认为此问题与 google play service app update method (app bundle) 有关。为什么我认为问题出在 google play 服务中?因为这个问题发生在 2020 年 11 月 1 日左右的用户身上,我认为在这个日期谷歌更新谷歌播放服务并且问题从这里开始,我还有另一个原因,当我在代码中的某个位置进行一些更改时我在 Playstore 中重新发布了该应用程序,问题突然消失了,当我重新发布它时,问题再次出现。由于所有这些原因,我认为问题出在 google play 服务上。

- 从 Manifest 文件中删除不必要的引用暂时解决了问题,但如果您尝试重新发布您的应用程序,问题再次出现!

于 2021-01-16T16:26:09.510 回答
0

我有同样的问题,这个问题是在特定设备上引起的(诺基亚诺基亚 1 和华为 P8),问题是来自谷歌预发布测试实验室的错误,如果这个问题是这个独特的,你只需要忽略真的,这个问题出现差不多三个月,谷歌会解决它,我们不知道什么时候......

于 2020-12-15T19:05:37.560 回答
-3

更新到 firebase 最新的 SDK 后,我遇到了这个问题。问题是,我没有删除以前从应用程序中删除的服务的引用。

  • 检查您的清单并删除不必要的引用,这些引用将以红色显示。

通过这样做,我能够从预发布报告中删除此错误。

于 2020-11-13T08:30:00.140 回答