You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Crashlytics Gradle插件3.0.0版本Mapping文件上传失败求助

Crashlytics Gradle插件3.0.0升级后Mapping文件上传任务失败的修复方案

问题核心

升级至Crashlytics Gradle插件3.0.0后,执行:androidApp:uploadCrashlyticsMappingFileRelease任务时,Gradle检测到该任务未声明依赖却使用了Debug任务的输出文件gmpAppId.txt,导致Release任务意外依赖Debug任务,引发执行顺序错误。

修复步骤

1. 对齐插件版本兼容性

确保项目根目录build.gradle中,Google Services插件与Crashlytics插件版本匹配(Crashlytics 3.0.0建议搭配Google Services 4.4.1及以上版本):

buildscript {
    dependencies {
        classpath 'com.google.gms:google-services:4.4.1'
        classpath 'com.google.firebase:firebase-crashlytics-gradle:3.0.0'
    }
}

2. 显式绑定Release任务的正确依赖

在App模块的build.gradle中,为uploadCrashlyticsMappingFileRelease任务指定正确的Release阶段依赖,避免它读取Debug任务的输出:

tasks.named("uploadCrashlyticsMappingFileRelease") {
    // 绑定Release阶段的Google Services处理任务
    dependsOn("processReleaseGoogleServices")
    // 确保在Release任务完成后再执行上传
    mustRunAfter("processReleaseGoogleServices")
}

3. 验证google-services.json配置

检查项目中的google-services.json文件,确认其中包含正确的Release环境配置(release节点的client_info下的mobilesdk_app_id需与Release构建的App ID一致),避免Gradle错误加载Debug环境的配置文件。

4. 清理构建缓存并重新构建

执行以下命令清理旧缓存,确保Gradle重新生成正确的任务依赖关系:

./gradlew clean
./gradlew :androidApp:uploadCrashlyticsMappingFileRelease

5. 排查自定义Gradle配置

检查项目中是否存在自定义的Gradle任务或插件,是否意外将Release任务与Debug任务建立了依赖关系,如有则移除相关关联代码。

内容的提问来源于stack exchange,提问作者Philio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 20:20:04