升级至Android 15(API 35)后Flutter项目编译失败,急求解决办法
升级至Android 15(API 35)后Flutter项目编译失败,急求解决办法
兄弟我太懂你这种赶deadline的焦虑了!8月31号前要发版,升级完API35直接全崩,换谁都头大。我帮你梳理下大概率出问题的地方和解决办法,你一步步来试试:
核心问题:Kotlin版本与Gradle插件不兼容
你现在用的Kotlin版本是2.1.0,这是Kotlin的新大版本,而Flutter 3.35.1稳定版目前还没完全适配Kotlin 2.x系列,这大概率是编译失败的罪魁祸首!
第一步:调整根目录android/build.gradle配置
把Kotlin版本降级到Flutter官方推荐的1.9.20,同时把Android Gradle Plugin(AGP)版本调整到和Flutter 3.35.1匹配的8.5.1,修改后的代码如下:
buildscript { ext.kotlin_version = '1.9.20' repositories { google() mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.android.tools.build:gradle:8.5.1' } } allprojects { repositories { google() mavenCentral() } } rootProject.buildDir = '../build' subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" } subprojects { project.evaluationDependsOn(':app') } tasks.register("clean", Delete) { delete rootProject.buildDir }
第二步:同步Gradle wrapper版本
AGP 8.5.1需要搭配Gradle 8.7版本使用,找到android/gradle/wrapper/gradle-wrapper.properties,修改distributionUrl:
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip
第三步:彻底清理缓存并重新构建
缓存残留经常会导致各种奇怪的编译问题,执行以下命令彻底清理:
flutter clean # Windows用户可以手动删除android/.gradle、android/build、../build文件夹 rm -rf android/.gradle android/build ../build flutter pub get flutter build apk --release
第四步:排查第三方依赖兼容性
如果上面的步骤还没解决问题,那大概率是某个第三方插件没适配API35。你可以:
- 把所有pub依赖升级到最新版本(执行
flutter pub upgrade) - 逐个排查最近更新的插件,尤其是涉及权限、通知、系统API的插件,比如
permission_handler、flutter_local_notifications等,确认它们的最新版本支持API35
先按这个流程走,应该能解决大部分编译问题。要是还有具体的错误日志,你可以贴出来,我再帮你针对性分析!
内容来源于stack exchange
相关产品推荐
相关产品推荐

