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

Flutter 3.19.5安卓端运行问题:是否需删除android文件夹?

解决Flutter 3.16+中Gradle插件命令式apply弃用错误(无需删除android文件夹)

问题根源

Flutter 3.16版本起,官方废弃了Gradle插件的命令式apply引用方式,改用声明式plugins块配置,但你的项目android目录仍在使用旧写法。同版本其他开发者能正常运行,大概率是他们的本地配置已适配新规则,或是仓库里的android配置存在版本差异。

分步解决方案

1. 替换android/build.gradle中的插件引用

找到文件中类似以下的命令式代码:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

替换为声明式plugins块:

plugins {
    id 'com.android.application'
    id 'kotlin-android'
    id 'dev.flutter.flutter-gradle-plugin'
}
  • 若项目有自定义的apply from(比如第三方插件配置),可保留该语句,仅替换官方Flutter插件的引用方式。
  • 所有自定义配置(如签名、buildTypes、productFlavors)无需改动,保留原位置即可。

2. 清理缓存并同步Gradle

执行以下命令清理本地缓存:

flutter clean
cd android && ./gradlew clean build --refresh-dependencies

(Windows环境替换为gradlew.bat clean build --refresh-dependencies)
之后在Android Studio中点击「File -> Sync Project with Gradle Files」完成同步。

3. 对齐Gradle版本配置

检查android/gradle/wrapper/gradle-wrapper.properties中的distributionUrl,确保和其他开发者使用的Gradle版本一致(比如https\://services.gradle.org/distributions/gradle-8.4-all.zip)。
同时确认android/build.gradle中的Gradle插件版本与Gradle版本匹配(例如Gradle 8.4对应插件版本com.android.tools.build:gradle:8.4.0)。

4. 验证本地Flutter环境

执行flutter doctor,确保Android SDK、NDK等依赖安装完整且无警告;再执行flutter pub get拉取最新依赖。

5. 对比其他开发者的配置

如果以上步骤无效,直接对比能正常运行的开发者的android/build.gradle和gradle-wrapper.properties文件,逐步调整差异点,保留自身的自定义配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 01:51:03