美文网首页
百度定位集成问题(iOS)

百度定位集成问题(iOS)

作者: 4c8fd9ddcb74 | 来源:发表于2020-09-26 11:37 被阅读0次
        因为公司业务需要,领导要求使用百度定位这个Flutter 的库,以下介绍集成百度地图的相关步骤以及坑点 (不是一般的坑)。
    

    一、集成Flutter 插件

    1. 下载百度地图的demo,找到demo的plugins文件夹,把整个文件夹拷贝到自己项目的根目录中

      当然也可以自己创建文件夹,bdmap_location_flutter_plugin必须得有 导入后效果
    2. 找到Flutter项目\color{#FF0000}{根目录}的pubspec.yaml文件,添加定位配置

      需要注意的是这个格式必须要对,避免产生不必要的空格之类的字符
    3. commond(ctrl) + s 或者点击package get,或者点击下载图片完成插件的集成。 145940.png

    \color{#FF0000}{!!!!以下步骤存在坑点,需要注意,先看完步骤再操作,免得被我带进坑}

    1. 打开项目的ios项目\color{#FF0000}{最好在Vscode 中先运行一次(flutter run),目的是让项目执行pod install,下载相关的库文件} ---> 双击打开Runner.xcworkspace 文件

      QQ20200813-150704.png
    2. 选中项目的Pods 然后右方会出现\color{#FF0000}{ bdmap_location_flutter_plugin}的targets子项目,然后再选中Build Phases --> Link Binary With Libraries 添加对应的库,一共有十个,少哪个都要自己手动加,添加的库参考手动部署定位SDK,部署过程根据官网步骤配置,问题不大

      bdmap_location_flutter_plugin 子项目 注意手动添加BMKLocationKit.framework库
    3. 然后你就可以开心地进行在VSCODE中执行flutter run 命令,迎接坑的到来 QQ20200813-153750.png QQ20200813-153750.png QQ20200813-153841.png QQ20200813-153918.png
    4. 问题很长我就直接告诉如何处理了,英文好的可以一行一行看具体是什么意思,我的处理方式就是在项目中重新添加图下的两个库\color{#FF0000}{问题未必出现,如果出现可尝试使用该方法解决}

      这两个库必须,如果少了AdSuppert的话会报错,想知道错误可删掉自行体会
    5. 添加两个库之后问题就解决了,可以运行flutter run 看看效果,接下来更\color{#FF0000}{坑}的地方来了,先看看运行后的问题

      是不是很纠结,明早库都导入了居然提示没有找到对应的库头文件,请看下一张图 可以对比一下第5步的那个图,是不是发现少了些什么东西,就是之前导入的库全没了
    6. 库没了,只能老实重新再导入,再告诉读者一个坑,这些库一旦你修改了pubspec.yaml 文件,例如添加或者删除某些插件,那恭喜你,重新再导一次吧,或者尝试官方的自动导入(本人没试过)

    7. 问题总是一波三折,再次flutter run 之后,异常如期而至 意思是和UIKit 相关的,倒是好解决,直接看下图 就是重新添加Foundation.framework,把原来那个看着有点差异的同名库删掉

    至些,恭喜你,百度定位已经集成好了
    后面就是项目集成了,可以参考官方文档

    相关文章

      网友评论

          本文标题:百度定位集成问题(iOS)

          本文链接:https://www.haomeiwen.com/subject/omwbdktx.html