CannotDeliverBroadcastException 在运行 Android 13 (API 33) 的三星设备上

问题描述 投票:0回答:1

我们从 Firebase 收到了很多有关此次崩溃的崩溃报告。

Fatal Exception: android.app.RemoteServiceException$CannotDeliverBroadcastException: can't deliver broadcast
       at android.app.ActivityThread.throwRemoteServiceException(ActivityThread.java:2219)
       at android.app.ActivityThread.-$$Nest$mthrowRemoteServiceException()
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2508)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loopOnce(Looper.java:226)
       at android.os.Looper.loop(Looper.java:313)
       at android.app.ActivityThread.main(ActivityThread.java:8762)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:604)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)

仅在运行 Android 13 (API 33) 的三星设备上发生崩溃

我们关注了这篇文章 CannotDeliverBroadcastException 仅在运行 Android 12 的 Pixel 设备上

问题是 - 我们不能只是沉默/吸收这种崩溃,因为我们的一些应用程序功能是基于广播(BroadcastReceiver,在清单中注册)构建的。

我们实际上需要防止这次崩溃(以某种方式:))

我们还在谷歌问题跟踪器上检查了这个问题,但似乎没有解决方案 https://issuetracker.google.com/issues/245258072

你们有人找到解决方案吗? 谢谢

android broadcastreceiver samsung
1个回答
0
投票

这可能根本不是广播错误,而是由内存碎片(OOM)引起的连锁错误。

在应用程序运行时对其进行分析,并确保它没有耗尽分配的内存。

这里有一些非常很好的建议可以尝试。在计时器上弹跳服务(终止/重新启动)也可能会阻止这种行为。

© www.soinside.com 2019 - 2024. All rights reserved.