VSCode构建Flutter应用报错No such module 'heresdk',XCode运行正常
问题表现
...here_sdk/ios/Classes/MapController.swift:14:8: error: no such module 'heresdk' import heresdk
该错误仅在VS Code运行Flutter iOS端时出现,通过XCode运行同一应用无异常。当前环境为Flutter 2.5.2稳定版、XCode 13版本,构建目标为iOS 15.0模拟器。
解决方案
- 第一步:清理项目缓存并重装依赖
关闭所有模拟器、XCode、VS Code窗口,在项目根目录依次执行以下命令:
flutter clean rm -rf ios/Pods ios/Podfile.lock ios/Runner.xcworkspace flutter pub get cd ios && pod install --repo-update
- 第二步:配置VS Code启动参数指定xcworkspace
VS Code默认可能错误选择Runner.xcodeproj作为构建目标,而引入了第三方SDK的iOS项目需要通过Runner.xcworkspace构建。在项目根目录的.vscode/launch.json文件中添加如下配置:
{ "version": "0.2.0", "configurations": [ { "name": "Flutter iOS", "request": "launch", "type": "dart", "args": [ "--workspace", "ios/Runner.xcworkspace", "--scheme", "Runner" ] } ] }
第三步:对齐构建配置参数
打开XCode进入Runner项目的「Build Settings」页面:- 搜索
Framework Search Paths,确认heresdk的存储路径已被添加,且路径权限设置为Recursive - 搜索
iOS Deployment Target,确认设置值为15.0,和你要构建的模拟器版本保持一致
- 搜索
第四步:M系列芯片Mac额外适配
如果你使用的是Apple Silicon芯片的Mac,需要额外添加架构排除配置:
在ios目录下的Podfile中添加如下配置:
post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) target.build_configurations.each do |config| config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64' end end end
配置完成后重新执行cd ios && pod install,再从VS Code启动应用即可。
内容的提问来源于stack exchange,提问作者abdullah
相关产品推荐
相关产品推荐

