已升级至Firebase Crashlytics 18.4.0,Google Play仍拒审该如何解决?
解决Google Play拒审:Crashlytics升级后仍存在设备标识符违规问题
排查第三方依赖中的违规SDK
升级Crashlytics后仍被拒,大概率是其他依赖库在使用旧版Fabric或违规SDK。用Gradle命令查看完整依赖树:./gradlew app:dependencies搜索
io.fabric.sdk.android:fabric或其他可能收集设备标识符的SDK(如广告、统计类SDK),找到后强制升级到其合规版本,或直接移除该依赖。清理旧Fabric残留配置与代码
确保完全移除旧Fabric的所有痕迹:- 删除
AndroidManifest.xml中旧的Fabric meta-data(如io.fabric.ApiKey) - 移除build.gradle中旧的Fabric插件引用(如
classpath 'io.fabric.tools:gradle:1.+') - 删除代码中
Fabric.with()等旧初始化逻辑 - 检查
google-services.json,确保未关联旧Fabric项目
- 删除
禁用Crashlytics不必要的标识符收集
新版Firebase Crashlytics默认可能收集广告ID(AD_ID),若应用无需广告相关功能,可在AndroidManifest.xml中添加配置关闭:<meta-data android:name="firebase_crashlytics_collection_enabled" android:value="true" /> <meta-data android:name="firebase_crashlytics_collection_enabled_for_debug" android:value="false" /> <!-- 禁用广告ID收集 --> <meta-data android:name="google_analytics_adid_collection_enabled" android:value="false" />同时在代码初始化时明确配置:
FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true) // 若不需要AD_ID,额外添加以下配置 FirebaseAnalytics.getInstance(context).setUserProperty("google_analytics_adid_collection_enabled", "false")清理构建缓存并重新打包
旧构建缓存可能导致旧SDK版本被打包,执行以下命令彻底清理后重新构建:./gradlew clean ./gradlew assembleRelease确保生成的APK/App Bundle为全新构建产物,无缓存残留。
用Play Console工具验证SDK合规性
在Google Play Console的应用发布页面,找到「SDK库」选项,查看当前提交包中的SDK列表,确认是否仍存在违规SDK。若工具提示问题,根据提示定位具体SDK并处理。提交申诉并提供证明材料
若以上步骤完成后仍被拒审,可通过拒审邮件的申诉入口提交申诉,附上:- 依赖树截图/文本,证明已移除旧Fabric及违规SDK
- 应用配置文件截图,证明已禁用不必要的标识符收集
- 构建日志片段,确认使用合规的Crashlytics版本
内容的提问来源于stack exchange,提问作者Yesika Castillo
相关产品推荐
相关产品推荐

