Android Studio集成Flutter模块报错:无法解析符号'embedding'
解决Flutter嵌入Android项目时无法解析
embedding包的问题 可能原因及对应解决方案
1. Flutter SDK版本过低
io.flutter.embedding是Flutter 1.12版本后引入的新嵌入API,旧版本SDK不包含这个包。
- 打开终端执行
flutter upgrade升级到稳定版SDK - 进入Flutter模块目录,执行
flutter build aar重新构建模块,再回到Android项目同步依赖
2. 依赖引入方式错误
确保通过官方方式引入Flutter模块,而非手动添加旧版jar文件:
- 在Android项目的
settings.gradle中添加:setBinding(new Binding([gradle: this])) evaluate(new File( settingsDir.parentFile, '你的Flutter模块相对路径/.android/include_flutter.groovy' )) - 在App模块的
build.gradle中添加依赖:implementation project(':flutter') - 同步Gradle后,检查依赖列表中是否包含
flutter-debug.aar或对应release版本,而非单独的jar文件
3. 本地缓存问题
Gradle缓存可能残留旧依赖文件:
- 执行Android Studio菜单栏的
File > Invalidate Caches... > Invalidate and Restart - 删除Android项目根目录的
.gradle文件夹,以及Flutter模块目录下的.android文件夹,重新构建并同步
4. 混淆或依赖过滤配置错误
如果开启了混淆,检查proguard-rules.pro是否误过滤了Flutter类:
- 添加以下规则:
-keep class io.flutter.** { *; } -keep class io.flutter.plugins.** { *; } - 确认
build.gradle中没有配置exclude group: 'io.flutter'这类过滤规则
内容的提问来源于stack exchange,提问作者MrJay
相关产品推荐
相关产品推荐

