摘要:有好的想法可以评论一下。下面放相关代码先走毫秒后调用链接这里放相关链接终端高德苹果和安卓头部不一样百度苹果和安卓头部不一样
前几天,联合黑卡反馈了一个需求,需要在H5中打开百度APP或者是高德APP,于是我在网上查了相关文档,下面放上链接: 1.高德地图 2.百度地图
具体思路就是点击选择地图的时候,先去请求APP链接,800毫秒后无响应,再跳转至H5链接。这样的做法有一点不好就是不管跳不跳APP,都会跳到H5的链接。有好的想法可以评论一下。
下面放相关代码:
function ToggleAppAndH5( AppUrl , AppCallback = () => {}){ // 先走APP const ifr = document.createElement("iframe"); ifr.src = AppUrl; ifr.style.display = "none"; document.body.appendChild(ifr); setTimeout(function(){ document.body.removeChild(ifr); }, 3000); // 800毫秒后调用H5链接 let timer = setTimeout(function () { clearTimeout(timer); AppCallback(); }, 800); window.onblur = function () { clearInterval(timer); }; } function Callback(){ // 这里放相关H5链接 if (mapType === "baidu") { frameDom.attr("src", "http://api.map.baidu.com/direction?origin=latlng:"+ curLat +","+ curLng +"|name:"+ currAddr +"&destination=latlng:"+ elat +","+ elng +"|name:"+ eaddr +"®ion="+ cityName +"&mode=driving&output=html&src=com.youbei.chefu"); } else if (mapType === "amap") { frameDom.attr("src", "https://ditu.amap.com/dir?type=car&from[lnglat]="+ curLng +","+ curLat +"&from[name]="+currAddr+"&to[lnglat]="+ elng +","+ elat +"&to[name]="+eaddr+"&src=com.youbei.chefu"); } } const u = navigator.userAgent; const isiOS = !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
1. 高德
// 苹果和安卓头部不一样 let proto = isiOS ? "iosamap://path" : "amapuri://route/plan" ; const AppUrl = proto + "?t= 0&slat="+curLat+"&slon="+curLng+"&sname="+currAddr+"&dlat="+elat+"&dlon="+elng+"&dname="+eaddr+"&src=xxx"; ToggleAppAndH5(AppUrl,Callback)
2.百度
// 苹果和安卓头部不一样 let proto = isiOS ? "baidumap://" : "bdapp://" const AppUrl = proto + "map/direction?region="+cityName+"&origin=latlng:"+ curLat+","+ curLng +"|name:"+ currAddr +"&destination=latlng:"+ elat +","+ elng +"|name:"+ eaddr +"&coord_type=bd09ll&mode=driving&src=com.youbei.chefu"; ToggleAppAndH5(AppUrl, Callback)
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/109580.html
摘要:不努力不奋斗,可能就会在基层一辈子止步不前。不过,只一句,如果你还在做这一行,还是一名程序猿媛,想走上坡路的你,也许我这到手的十几家一线互联网公司性能优化项目实战可能会对你有所帮助。 ...
阅读 3507·2021-09-10 10:51
阅读 2482·2021-09-07 10:26
阅读 2455·2021-09-03 10:41
阅读 786·2019-08-30 15:56
阅读 2864·2019-08-30 14:16
阅读 3463·2019-08-30 13:53
阅读 2067·2019-08-26 13:48
阅读 1894·2019-08-26 13:37