uniapp (IOS端安卓端)調用高德、百度、騰訊地圖導航


不僅適用於uniapp、vue以及微信小程序和普通手機h5應用都適用,親測有效

直接上代碼:

// 點擊某個地方,調起下面的方法 // 方法要傳入需要標注地點的緯度latitude,經度longitude,名字name toMapAPP(latitude,longitude,name){ let url = ""; if (plus.os.name == "Android") {//判斷是安卓端 plus.nativeUI.actionSheet({//選擇菜單 title: "選擇地圖應用", cancel: "取消", buttons: [{title: "騰訊地圖"},{title: "百度地圖"}, {title: "高德地圖"}] }, function(e) { switch (e.index) { //下面是拼接url,不同系統以及不同地圖都有不同的拼接字段 case 1: //注意referer=xxx的xxx替換成你在騰訊地圖開發平台申請的key url = `qqmap://map/geocoder?coord=${latitude},${longitude}&referer=xxx`; break; case 2: url = `baidumap://map/marker?location=${latitude},${longitude}&title=${name}&coord_type=gcj02&src=andr.baidu.openAPIdemo`; break; case 3: url = `androidamap://viewMap?sourceApplication=appname&poiname=${name}&lat=${latitude}&lon=${longitude}&dev=0`; break; default: break; } if (url != "") { url = encodeURI(url); //plus.runtime.openURL(url,function(e){})調起手機APP應用 plus.runtime.openURL(url, function(e) { plus.nativeUI.alert("本機未安裝指定的地圖應用"); }); } }) } else { // iOS上獲取本機是否安裝了百度高德地圖,需要在manifest里配置 // 在manifest.json文件app-plus->distribute->apple->urlschemewhitelist節點下添加 //(如urlschemewhitelist:["iosamap","baidumap"]) plus.nativeUI.actionSheet({ title: "選擇地圖應用", cancel: "取消", buttons: [{title: "騰訊地圖"},{title: "百度地圖"}, {title: "高德地圖"}] }, function(e) { switch (e.index) { case 1: url = `qqmap://map/geocoder?coord=${latitude},${longitude}&referer=xxx`; break; case 2: url = `baidumap://map/marker?location=${latitude},${longitude}&title=${name}&content=${name}&src=ios.baidu.openAPIdemo&coord_type=gcj02`; break; case 3: url = `iosamap://viewMap?sourceApplication=applicationName&poiname=${name}&lat=${latitude}&lon=${longitude}&dev=0`; break; default: break; } if (url != "") { url = encodeURI(url); plus.runtime.openURL(url, function(e) { plus.nativeUI.alert("本機未安裝指定的地圖應用"); }); } }) } }
當然,這只是拉起APP的操作,如果您想拉起APP並進入相關的模式,比如線路規划,騎行導航等,只需要將相關參數傳入,並更改相關的URL值即可。在此提供一下高德地圖的相關教程:https://lbs.amap.com/api/amap-mobile/guide/ios/route


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM