1.百度地图官方文档:地图调起API | 百度地图API SDK
2.高德地图官方文档: 路径规划-Android-开发指南-高德地图手机版 | 高德地图API
if (val.name == '高德') {
// 手机获取的是百度坐标,百度坐标转高德
let lng = bd09togcj02(this.lng, this.lat)[0]
let lat = bd09togcj02(this.lng, this.lat)[1]
// 工单返回的终点经纬度是GPS的,即WGS84的坐标,所以需要转成高德的
let lngEnd = wgs84togcj02(this.currentData.longitude, this.currentData.latitude)[0]
let latEnd = wgs84togcj02(this.currentData.longitude, this.currentData.latitude)[1]
// 直接唤起高德APP
window.location.href = `amapuri://route/plan/?sourceApplication=amap&sid=&slat=${lat}&slon=${lng}&sname=当前位置&did=&dlat=${latEnd}&dlon=${lngEnd}&dname=目的地&dev=0&t=0`
//判断是否跳转
// setTimeout(function () {
// let hidden =
// window.document.hidden ||
// window.document.mozHidden ||
// window.document.msHidden ||
// window.document.webkitHidden
// if (typeof hidden == 'undefined' || hidden == false) {
// //调用高德地图
// window.location.href = 'https://uri.amap.com/marker?position=' + lng + ',' + lat + '&name=' + '上海市政府'
// }
// }, 2000)
} else if (val.name == '百度') {
// 工单返回的终点经纬度是GPS的,即WGS84的坐标,所以需要转成百度的
let lngEnd = convertLngLat(this.currentData.longitude, this.currentData.latitude)[0]
let latEnd = convertLngLat(this.currentData.longitude, this.currentData.latitude)[1]
// //安卓操作系统
// let d = new Date()
// let t0 = d.getTime()
// 直接唤起百度APP
window.location.href = `baidumap://map/direction?origin=${this.lat},${this.lng}&destination=${latEnd},${lngEnd}&coord_type=bd09ll&mode=driving&src=andr.baidu.openAPIdemo`
// //由于打开需要1~2秒,利用这个时间差来处理--打开app后,返回h5页面会出现页面变成app下载页面,影响用户体验
// var delay = setInterval(function () {
// var d = new Date()
// var t1 = d.getTime()
// if (t1 - t0 < 3000 && t1 - t0 > 2000) {
// window.location.href =
// 'http://api.map.baidu.com/marker?location=' +
// lat +
// ',' +
// lng +
// '&title=' +
// self.partnerAddress +
// '&content=景点&output=html&src=webapp.baidu.openAPIdemo'
// }
// if (t1 - t0 >= 3000) {
// clearInterval(delay)
// }
// }, 1000)
}