Android 13(targetSdk33)迁移后Firebase Crashlytics启动崩溃问题
Android 13迁移(targetSdk=33)调试报错解决方案
报错1:run-as: package not debuggable: com.ct.passenger
解决步骤:
- 检查模块级
build.gradle的buildTypes配置,确保debug版本开启调试模式:
android { buildTypes { debug { debuggable true // 其他原有配置... } } }
- 确认Android Studio调试配置中,选择的是debug变体,而非release或其他非调试版本。
- 执行
Build > Clean Project,再Build > Rebuild Project,重新安装调试包。
报错2:java.lang.NoSuchMethodError: No virtual method callTimeout(JLjava/util/concurrent/TimeUnit;)Lokhttp3/OkHttpClient$Builder;
该错误是Crashlytics依赖的OkHttp版本与项目中OkHttp版本不兼容导致的,callTimeout方法在OkHttp 3.12+才引入。
解决步骤:
- 统一OkHttp版本:在模块级
build.gradle中明确指定兼容的OkHttp版本(建议≥3.12.0,推荐使用4.x稳定版):
dependencies { implementation 'com.squareup.okhttp3:okhttp:4.9.3' // 若用到日志拦截器,同步版本 implementation 'com.squareup.okhttp3:logging-interceptor:4.9.3' }
- 排查依赖冲突:执行终端命令查看依赖树,找出低版本OkHttp的来源:
# Mac/Linux ./gradlew app:dependencies # Windows gradlew.bat app:dependencies
找到冲突依赖后,通过exclude排除旧版本:
implementation('存在冲突的第三方库') { exclude group: 'com.squareup.okhttp3' }
- 更新Firebase相关依赖:当前使用的Firebase插件版本较旧,升级到兼容Android 13的版本:
在项目级build.gradle中更新:
buildscript { dependencies { classpath 'com.google.gms:google-services:4.4.1' classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.9' } }
模块级build.gradle同步更新Crashlytics依赖:
dependencies { implementation 'com.google.firebase:firebase-crashlytics:18.4.0' }
- 再次清理并重新构建项目,确保依赖更新生效。
内容的提问来源于stack exchange,提问作者vhiguita857
相关产品推荐
相关产品推荐

