在Google Play控制台中,java.lang.RuntimeException
出现时不带"原因:"
以下日志是从Google Play控制台崩溃日志复制的。
这是为了:安卓8.0、安卓8.1、安卓7.0、安卓7.1
java.lang.RuntimeException:
at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2955)
at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3030)
at android.app.ActivityThread.-wrap11 (Unknown Source)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1696)
at android.os.Handler.dispatchMessage (Handler.java:105)
at android.os.Looper.loop (Looper.java:164)
at android.app.ActivityThread.main (ActivityThread.java:6938)
at java.lang.reflect.Method.invoke (Method.java)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run (Zygote.java:327)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1374)
请你帮我一下!
6条答案
按热度按时间9vw9lbht1#
ActivityThread.java
表示它是updatePendingConfiguration()或registerOnActivityPausedListener(),因此它要么因.onPause()
而失败,要么无法使用正确的参数调用super()
方法-或者应用的Configuration
有问题。我很乐意解释如何解决这个问题,但是这个问题缺少抛出异常的代码,解决这个问题的最好方法可能是使用类似Firebase Crashlytics的代码,以便用户可以看到其确切来源以及受影响的设备(如果这应该是具体的)。我几乎怀疑这可能是由于启动一个
Activity
与应用程序的Context
,同时不设置标志Intent.FLAG_ACTIVITY_NEW_TASK
(参见:this answer)。qncylg1j2#
通过分析日志,可以做出以下假设,
在项目中使用的任何外部库中都将引发异常
ActivityThread.java
引发的,更具体地说,是2955
行的performLaunchActivity()
方法引发的。由于堆栈跟踪不包括应用程序的任何internal**class
,因此我们可以假设该异常是在项目中使用的库附带的externalclass
中引发的。如果是这种情况,可以执行以下解决方法来解决此问题-
我推荐你使用Customize your Firebase Crashlytics crash reports.因为,有时候仅仅堆栈跟踪不足以重现崩溃。
通过使用自定义功能,您将能够获得,
这肯定会帮助你再生崩溃并修复它。
llycmphe3#
我也遇到了同样的错误。我解决了它,也许它能帮助一些人:
问题出在我的land/tooldbariderxml中。我已经迁移到Androidx库。我通过更改有问题的xml文件解决了我的问题。
请勿用途:<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true">.......
</android.support.v4.widget.DrawerLayout>
改为用途:<androidx.drawerlayout.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true">.......
</androidx.drawerlayout.widget.DrawerLayout>
bnl4lu3b4#
简介
因为人们说:
你有额外的原因日志吗?这会有很大的帮助。
这是您的崩溃日志:
与此崩溃日志比较(相同的行号和代码流):
此行不同:
以及:
和额外原因日志:
android.support.v4.app
**行处。参见Android standalone app randomly crashes on app open
修复
www.example.com类软件包,或具有 * Compat后缀android.support class packages, or have a *Compat suffix
(1)AndroidX
(i)这个问题有一个miriad的原因,从我的互联网搜索。一个常见的原因似乎是使用
android.support class packages
,或有一个*Compat suffix
。审查你build.gradle
文件android.support.v4
等...(ii)因为 * 有时 * 它不会发生在测试中,只有部署,我猜
android.support.v4
等...使用的一些设备或API的有问题的设备库。Android 9.0 (API level 28)
的发布,有一个新版本的支持库称为AndroidX,它是Jetpack的一部分。AndroidX
库包含现有的支持库,还包括最新的Jetpack
组件。27
及更早版本,并打包为android.support.*
的工件)将在Google Maven
上仍然可用。但是,所有新库的开发都将在AndroidX
库中进行。AndroidX
。Support Library SetupGoogle's Maven
存储库获得。我们不再支持通过SDK Manager
下载库,并且该 * 功能很快将被删除。*v14
Preference
支持库和v17
Leanback
库,则你的最低SDK版本必须是17
或更高版本。另见:
Support Library Packages
features
(2)React-原生-筛选
这与react-native-screens相关,他们有解决此问题的变通方案,请查看:
Android crashes nondeterministically when restoring from background-视频。
lymnna715#
这个崩溃可能发生在任何地方。我遇到了同样的问题,根本原因是
IllegalArgumentException
在覆盖的Fragment#onViewCreated
中被错误实现的Comparator
抛出。片段本身是在AppCompatActivity#onCreate
期间通过FragmentManager
添加的。当然,如果你只有Google Play游戏机的崩溃报告,要找到根本原因几乎是不可能的。我很幸运地遇到了一个客户事件,让我知道了在哪里查看以及如何重现崩溃。你也可以切换到一个定制的崩溃报告工具,如HockeyApp或Firebase,以查看整个堆栈跟踪。
tjvv9vkg6#
将反模糊处理(mapping.txt)文件上传到GooglePlaystore,阅读下面的文档了解如何生成和上传。
https://support.google.com/googleplay/android-developer/answer/9848633?hl=en