前言
在用flutter做一个应用,需要用到地图导航,用到插件是amap_map_fluttify。
之前是一直没有问题的,但是偶然间,它就出现了,还只出现在ios端,android端没有发现这个问题。ios端运行调试或者打包都会出现这个问题。网上找了一圈没有找到解决方法,也看了相关的issue:
ios 编译报错
Xcode在Archive阶段出错(真机和模拟机都是vscode环境运行正常)
iOS真机测试错误:‘amap_core_fluttify/AmapCoreFluttifyPlugin.h’ file not found
可惜,都没有得到解决。但功夫不负有心人,最后还是解决了。因为没有找到解决方法,当时我就在一条条的阅读它的issue,偶然间看到了一条issue(具体是哪条忘了,也懒得去翻了)提到的flutter packages upgrade
命令,虽然解决的不是这个问题,但当时死马当活马医,我也跑了一下,结果还真管用。这里就记录一下。
解决步骤
1、终端里执行:flutter packages upgrade
2、执行之后再次run一下,注意,这里我用的是xcode的product里面的run而不是终端里面执行flutter run。结果出现以下问题:
解决方法是在终端flutter clean一下,然后重新打开xcode。
3、解决了上面的问题紧接着又出现了:
解决方法是:
- 终端执行:
flutter clean
- 然后执行:
flutter pub get
- 切换到ios目录:
cd ios
- 在ios目录下执行:
pod install
4、最后,最好还是重新打开下xcode,再运行,注意,这里还是通过xcode的run来运行而不是终端里执行flutter run。
至此,问题解决。
题外话
如果这套流程下来还无法解决的话,可以考虑将插件版本和flutter sdk的版本都更新一下。
最后,贴一下我当时ios的环境: