Noa*_*oam 10 android google-play-console
我们正在尝试调试某些用户发生的崩溃,但无法确切地知道它是什么.
在Google Play控制台中,我们看到:
java.lang.RuntimeException:
at android.app.ActivityThread.handleReceiver (ActivityThread.java:3331)
at android.app.ActivityThread.-wrap20 (ActivityThread.java)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1734)
at android.os.Handler.dispatchMessage (Handler.java:102)
at android.os.Looper.loop (Looper.java:154)
at android.app.ActivityThread.main (ActivityThread.java:6688)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1468)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1358)
Caused by: java.lang.ClassNotFoundException:
at dalvik.system.BaseDexClassLoader.findClass (BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass (ClassLoader.java:380)
at java.lang.ClassLoader.loadClass (ClassLoader.java:312)
at android.app.ActivityThread.handleReceiver (ActivityThread.java:3326)
Run Code Online (Sandbox Code Playgroud)
我们在项目中设置了Crashlytics,这是应用程序开始运行时加载的第一件事.我怀疑清单中可能缺少其中一个类,但是我们看了它(甚至为了确保它而消除了APK)并且它们都在那里.
我们怀疑它可能是其中一个活动在初始化期间使用的类,但其中一些是第三方SDK,因此我们无法访问其源代码.
有没有办法看到找不到的类名?错误不会出现在崩溃问题上,我们无法在我们拥有的任何设备/模拟器上重现错误.
谢谢!
编辑:部分解决方案
问题最终成为我们正在使用的通知包,它需要AndroidManifest.xml中特定于供应商的条目(我们的测试设备中没有这些条目).在重新整合了我们几乎所有的第三方服务后,我们最终看到崩溃报告消失了.
我们无法实现我们的总体目标(从记录到Google Play开发者控制台的异常中获取异常文本,而不仅仅是异常堆栈跟踪),因此找不到"好的"方法(据我们所知)哪个班级丢失了.相当令人失望的TBH.
因此,并非所有用户都会遇到此异常。显然,在运行时,对于这些用户来说,加载程序不知道这样的类。我的想法是,您正在使用一个库(例如 lib.so,您自己的本机代码或第 3 方库),其本机代码不支持某种架构(例如 MIPS 或 Intel),因此此类设备会出现异常。只是需要调查的事情。有针对不同架构的模拟器,因此您甚至可能不需要真正的硬件来测试这是否是根本原因。
| 归档时间: |
|
| 查看次数: |
306 次 |
| 最近记录: |