Flutter应用无法在Android模拟器运行,SDK XML版本报错求助
问题分析与修复方案
核心问题
- Gradle与Android Gradle Plugin(AGP)版本不兼容:你使用的Gradle wrapper是8.1,但根目录
build.gradle里的AGP版本为7.4.2,两者版本不匹配——AGP 7.4.x仅支持Gradle 7.5~7.6版本,Gradle 8.1需要AGP 8.0及以上版本,版本冲突会导致构建失败,无法在Android模拟器部署应用。 - SDK工具组件版本不一致:警告中的SDK XML版本4问题,源于cmdline-tools与Android Studio内置SDK工具版本不统一,部分组件未适配SDK 34的XML格式规范。
具体修复步骤
1. 统一Gradle与AGP版本
修改根目录build.gradle中的AGP版本,适配Gradle 8.1:
buildscript { repositories { google() mavenCentral() } dependencies { // 替换为与Gradle 8.1兼容的AGP稳定版 classpath 'com.android.tools.build:gradle:8.0.2' classpath 'com.google.gms:google-services:4.3.15' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.10" } }
2. 修复SDK工具版本问题
- 打开Android Studio的
SDK Manager(路径:Tools → SDK Manager) - 切换到
SDK Tools标签,勾选Show Package Details - 找到
Android SDK Command-line Tools (latest),卸载所有旧版本,仅安装支持SDK 34的最新版(一般为10.0+版本) - 确认
Android SDK Build-Tools已安装34.0.0版本
3. 清理并重建项目
执行以下命令彻底清理构建缓存,重新生成构建文件:
flutter clean flutter pub get cd android && ./gradlew clean assembleDebug cd .. flutter run
4. 验证模拟器配置
- 确保模拟器的系统镜像版本为API 34(与项目
targetSdkVersion保持一致) - 检查模拟器是否开启硬件加速(路径:AVD Manager → 编辑模拟器 → 高级设置 → 启用Hardware - GLES 2.0)
额外检查点
- 确认系统环境变量
JAVA_HOME指向JDK 17,无其他JDK版本干扰 - 运行
flutter doctor -v,排查是否存在隐藏的SDK组件缺失警告
内容的提问来源于stack exchange,提问作者kmccc
相关产品推荐
相关产品推荐

