WEB页面或者H5页面如何打开高德或者百度地图APP导航(实战向)

3 篇文章 0 订阅
2 篇文章 0 订阅

一、序言

在日常开发中,地图的接入使用在各大app和网站中我们都不难见到,打开方式也各有不同,嵌套内部的,或者是直接打开百度,高德,谷歌等地图app。相对来说,各大地图app的文档写的非常齐全,即使是按照官网示例复制进去也能起到该有的效果,需要用什么功能搜什么功能就是了。唯独打开地图app可能很多小伙伴总是搜不到,所以,本文介绍一下,如何在网页或者H5内调用百度和高德(用这俩的最多,就直接说这俩了)

二、如何在页面内调用地图

其实很简单,基本上来说,看一眼就会了,其实就仅仅只是一个url链接,跳转过去就是了,也就是说 :window.location.href = ‘这里面写url地址’ 就这样,没了,可能没写过的人想不到会这么简单

三、如何搜索文档

百度地图:
1、选择开发文档
2、搜素uri或者搜索地图调起api
3、选择搜出来的第一项就是文档了
或者直接在开发文档选择的时候直接选取
百度地图选择地图调用api
高德地图:
百度都知道怎么玩了,高德还用讲吗???扔个选择图片看看咯
高德地图选择地图调用api

四、怎么跳转

其实有了官方文档,这个都完全没必要说,直接给大家看看实战中我怎么写的吧(其实api功能很齐全,也可以顺便看看别的,如果不是强制要求使用内嵌式的,完全可以完全用第三方,省时省力)

 //地图导航

/**
 * 需要参数:
 * @val{确认是哪个跳转哪个端口}
 * @myLocation {自身地址,我存了缓存取的}
 * @lng/lat{经纬度}
 * @myLocation.formattedAddress {起点地址名称}
 * @cabinData{终点地址数据}
 * 其余的应该一眼能看懂吧(我这是vue,其他开发方式的请自行转换)
 */
    isnavigation(val) {
      let that = this
      let myLocation = JSON.parse(sessionStorage.getItem('ownChooseLocation'))
      if (this.cabinData.longitude && this.cabinData.latitude) {
        let Url = ''
        switch (val) {
          case 'amap':
            Url = `https://uri.amap.com/navigation?from=${myLocation.lng},${myLocation.lat},${myLocation.formattedAddress}&to=${that.cabinData.longitude},${that.cabinData.latitude},${that.cabinData.name}&callnative=1`
            break
          case 'bmap':
            Url = `http://api.map.baidu.com/direction?origin=latlng:${myLocation.lat},${myLocation.lng}|name:${myLocation.formattedAddress}&destination=latlng:${that.cabinData.latitude},${that.cabinData.longitude}|name:${that.cabinData.name}&mode=driving&origin_region=${myLocation.city}&destination_region=${that.cabinData.cityName}&output=html&src=webapp.baidu.openAPIdemo`
            break
        }
        location.href = Url
      } else {
        this.$message({
          message: '请先确认您的起点和终点位置',
          type: 'warning',
        })
      }
    },

五、注意

如果是APP内的H5页面调用,需要APP那边开通跳转,否则会直接被拦截,从而显示网络错误(错误代码302)

其实没啥难的,做过一次肯定就不会有什么疑问了,有问题欢迎留言评论,最后附上高德和百度地图的开发平台地址
百度地图
高德地图

评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值