Android 签名的 APK 崩溃
Posted
技术标签:
【中文标题】Android 签名的 APK 崩溃【英文标题】:Android Singed APK crashed 【发布时间】:2021-03-27 21:45:01 【问题描述】:我遇到了签名 APK 的问题,调试 apk 工作正常,当我生成签名 apk 并运行它时显示错误。
以下是错误日志
E/androidRuntime: 致命异常: main 进程:com.woodenstreet,PID:25818 java.lang.NoSuchMethodError: 类 Lorg/json/JSONObject 中没有虚拟方法 x(Ljava/lang/String;I)I;或其超类('org.json.JSONObject' 的声明出现在 /apex/com.android.runtime/javalib/core-libart.jar 中) 在 com.google.firebase.crashlytics.internal.settings.DefaultSettingsJsonTransform.d(SourceFile:1) 在 com.google.firebase.crashlytics.internal.settings.DefaultSettingsJsonTransform.e(SourceFile:2) 在 com.google.firebase.crashlytics.internal.settings.SettingsController.(SourceFile:11) 在 com.google.firebase.crashlytics.internal.settings.SettingsController.l(SourceFile:14) 在 com.google.firebase.crashlytics.internal.Onboarding.l(SourceFile:4) 在 com.google.firebase.crashlytics.FirebaseCrashlytics.a(SourceFile:26) 在 com.google.firebase.crashlytics.CrashlyticsRegistrar.b(SourceFile:5) 在 com.google.firebase.crashlytics.CrashlyticsRegistrar.a(未知来源:0) 在 com.google.firebase.crashlytics.CrashlyticsRegistrar$$Lambda$1.a(未知来源:2) 在 com.google.firebase.components.ComponentRuntime.f(SourceFile:1) 在 com.google.firebase.components.ComponentRuntime$$Lambda$1.get(未知来源:4) 在 com.google.firebase.components.Lazy.get(SourceFile:6) 在 com.google.firebase.components.ComponentRuntime.e(SourceFile:5) 在 com.google.firebase.FirebaseApp.n(SourceFile:7) 在 com.google.firebase.FirebaseApp.q(SourceFile:13) 在 com.google.firebase.FirebaseApp.p(SourceFile:1) 在 com.google.firebase.FirebaseApp.o(SourceFile:7) 在 com.google.firebase.provider.FirebaseInitProvider.onCreate(SourceFile:1) 在 android.content.ContentProvider.attachInfo(ContentProvider.java:2092) 在 android.content.ContentProvider.attachInfo(ContentProvider.java:2066) 在 com.google.firebase.provider.FirebaseInitProvider.attachInfo(SourceFile:2) 在 android.app.ActivityThread.installProvider(ActivityThread.java:6983) 在 android.app.ActivityThread.installContentProviders(ActivityThread.java:6528) 在 android.app.ActivityThread.handleBindApplication(ActivityThread.java:6445) 在 android.app.ActivityThread.access$1300(ActivityThread.java:219) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1859) 在 android.os.Handler.dispatchMessage(Handler.java:107) 在 android.os.Looper.loop(Looper.java:214) 在 android.app.ActivityThread.main(ActivityThread.java:7356) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
这里是 build.gradle 应用级文件
Build file
我无法找出错误,请帮助我。 谢谢
【问题讨论】:
【参考方案1】:您在 build.gradle 中的发布配置不适合您的库。我认为它与json有关,proguard混淆了它的一些方法。 试试这个https://***.com/a/61481954/10117882
【讨论】:
以上是关于Android 签名的 APK 崩溃的主要内容,如果未能解决你的问题,请参考以下文章
使用 Google Maps API v2 时,签名的 APK 崩溃,未签名的 APK