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

Flutter构建报错:androidx.window要求compileSdkVersion≥31如何解决

报错原因

Flutter 3.0版本默认集成的androidx.window:window-java等AndroidX依赖,要求项目编译所用的compileSdkVersion最低为31,当前项目:app模块配置的编译目标为android-28,不满足依赖的版本要求,构建会直接中断。

解决步骤
  • 打开项目路径下的android/app/build.gradle文件,定位到android配置块中的compileSdkVersion配置项
  • 将原有compileSdkVersion 28的配置修改为compileSdkVersion 31,对应配置参考如下:
android {
    // 仅修改compileSdkVersion数值为31,其余原有配置保持不变
    compileSdkVersion 31

    defaultConfig {
        // minSdkVersion、targetSdkVersion无需跟着修改,compileSdk仅作用于编译阶段,不决定App支持的最低安卓系统版本
        applicationId "你的项目包名"
        minSdkVersion 原有配置值
        targetSdkVersion 原有配置值
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
    }
}
  • 如果修改app模块配置后仍报相同错误,是因为引入的第三方插件在自身配置中写死了低版本compileSdk,无需修改插件源码,打开项目根目录下的android/build.gradle文件,添加如下全局配置,强制所有子模块(含第三方插件)统一使用31版本compileSdk:
subprojects {
    afterEvaluate { project ->
        if (project.plugins.hasPlugin('com.android.application') || project.plugins.hasPlugin('com.android.library')) {
            android {
                compileSdkVersion 31
            }
        }
    }
}
  • 配置修改完成后,执行flutter clean清除历史构建缓存,重新触发构建即可正常编译。

注意:compileSdkVersion是编译阶段使用的SDK版本,仅决定编译时可调用的API范围,不会改变App对低版本安卓系统的兼容性,无需担心修改后低版本系统用户无法安装使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 08:09:27