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

Flutter构建Release APK时compileSdkVersion不匹配问题求助

解决Flutter构建Release APK时compileSdkVersion版本不匹配问题

以下是针对该问题的具体解决步骤:

  • 检查项目全局Gradle配置
    打开项目根目录/android/build.gradle(注意不是app模块下的build.gradle),找到ext代码块,确保其中的compileSdkVersion设置为31及以上版本,示例:

    ext {
        compileSdkVersion = 33
        minSdkVersion = 21
        targetSdkVersion = 33
    }
    

    很多第三方插件会读取这个全局配置,而非app模块单独的设置。

  • 强制统一依赖版本
    如果部分插件硬编码了低版本compileSdk,可以在app模块的build.gradle的android块内添加以下配置,强制所有依赖适配指定的SDK版本:

    configurations.all {
        resolutionStrategy.eachDependency { details ->
            // 统一AndroidX依赖版本
            if (details.requested.group == 'androidx.core') {
                details.useVersion '1.10.1'
            }
            // 针对Firebase相关插件强制兼容高版本SDK
            if (details.requested.group == 'com.google.firebase') {
                details.useVersion '29.0.0'
            }
        }
    }
    

    同时确保app模块的android块和defaultConfig内的版本配置一致:

    android {
        compileSdkVersion 33
    
        defaultConfig {
            targetSdkVersion 33
            // 其他原有配置...
        }
    }
    
  • 彻底清理缓存并重新构建

    1. 执行Flutter清理命令:flutter clean
    2. 删除项目android目录下的.gradle文件夹(路径:E:\projects\mobileapp\android\.gradle)
    3. 重新执行构建:flutter build apk --release
  • 验证Android Studio的SDK配置

    1. 打开File > Project Structure > Project,确认Project SDK选择的是你已安装的Android 31+版本
    2. 切换到Modules > app,检查Properties标签页下的Compile Sdk Version和Target Sdk Version是否与配置文件一致
  • 匹配Gradle版本与SDK版本
    打开android/gradle/wrapper/gradle-wrapper.properties,确保distributionUrl对应的Gradle版本支持高版本SDK,例如适配Android 33的Gradle版本可以是:

    distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 02:36:23