likes
comments
collection
share

Flutter 接入高德地图

作者站长头像
站长
· 阅读数 51

公司项目终于告一断落。有时间来吐槽一下flutter了。之前是iOS原生,接触flutter三个月。优点写中小型的项目确实不错,写起来快。缺点就是资料太少了,尤其是支付宝,高德百度地图这种国内用的资料更少(因为stackoverflow没有)。官方文档也有点老,下面进入正题。

  1. 进入高德地图官网developer.amap.com/demo/list/s…

  2. 注册账号,创建应用,申请高德地图的key。该key与你的应用绑定。先来iOS的,

    Flutter 接入高德地图应用这里按照你的信息填写,记住iOS一个,android一个。方便区别我是XX_iOS,XX_android。完事进入如图

    Flutter 接入高德地图选择iOS的平台,iOS的Boundle ID获取用Xcode打开在这里,点上阅读同意就获取了iOS的高德地图Key。

    Flutter 接入高德地图

  3. 获取android的key。在flutter目录下随便点击一个android文件,编译器(我的用的android studio)就会提示你用android studio打开。

    Flutter 接入高德地图要是无法用android studio打开android文件看看这个链接添加一个文件就可以了(用vscode写的项目就会出现这个问题),stackoverflow.com/questions/6… 然后

Flutter 接入高德地图在右上角gradle中找到android - app - signingReport,下面的SHA1就是android的安全码,注意有release和debug版本,分别对应不同的状态,别选错了。在此说明一点平时运行的都是debug版本,想要release运行如图

Flutter 接入高德地图点击下拉图标,添加--release,献给同我一样的android菜鸟。其中可能出现的问题,如果右上角gradle下是空,百度解决一下,我有遇到过,怎么解决的记不清了。或者你可以使用其他获取 SHA1的方法,但是很多都是坑。。。然后获取了android的高德地图key

Flutter 接入高德地图项目中添加高德地图插件。

Flutter 接入高德地图android中还要配置这个,以及定位网络权限相关。注意service的位置是在中

Flutter 接入高德地图

Flutter 接入高德地图

iOS需要到Xcode中配置info.plist文件

Flutter 接入高德地图

最后引入包,项目code。

Flutter 接入高德地图这个很重要,隐私相关权限的,必须得加。去高德官网下载一个Demo,我都是根据它官方Demo写的配置,东西很多,这里需要自己自行去研究了。最后按照官方demo创建的map是可以正常显示的。我这里遇到一个神坑。android端正常运行,iOS端一直报错,隐私协议过不去。反复查了三天,也找不到问题。文档上一步一步推敲,也把它包拉下来分别加入到android和iOS工程中,iOS端依然无法解决问题。最后跟高德地图提起工单,逐步检查在Xcode中打个断点好了。。什么都没改就好了。初步定位bug可能是因为我公司的网络缘故。。这里建议用手机5G。就用我这种形式安装就好。把代码啦取到本地还需要配置一些东西很麻烦,官方文档写的条理也不清楚,到此高德地图已经接入成功。希望日后小伙伴多多写一些flutter的文章,丰富资料,方便我们flutter开发。