openAMap() {
let url = ''
const thisVM = this
if (plus.os.name == 'Android') {
//判断是安卓端
plus.nativeUI.actionSheet(
{
//选择菜单
title: '选择地图应用',
cancel: '取消',
buttons: [{ title: '高德地图' }, { title: '使用本地自带地图导航' }]
},
function(e) {
switch (e.index) {
//下面是拼接url,不同系统以及不同地图都有不同的拼接字段
case 1:
url = `androidamap://viewMap?sourceApplication=appname&poiname=${thisVM.address}&lat=${thisVM.latitude}&lon=${thisVM.longitude}&dev=0`
break
case 2:
return thisVM.sysMapPosition()
default:
break
}
if (url) {
url = encodeURI(url)
plus.runtime.openURL(url, function(e) {
plus.nativeUI.alert('本机未安装指定的地图应用')
})
}
}
)
} else {
plus.nativeUI.actionSheet(
{
title: '选择地图应用',
cancel: '取消',
buttons: [{ title: '高德地图' }, { title: '使用本地自带地图导航' }]
},
function(e) {
if (e.index === 1) {
url = `iosamap://viewMap?sourceApplication=applicationName&poiname=${thisVM.address}&lat=${thisVM.latitude}&lon=${thisVM.longitude}&dev=0`
} else {
return thisVM.sysMapPosition()
}
if (url) {
url = encodeURI(url)
plus.runtime.openURL(url, function(e) {
plus.nativeUI.alert('本机未安装指定的地图应用')
})
}
}
)
}
}
通过上述代码实现打开高德地图导航,但是正式打包后,其他app的中,如大众点评,选择高德导航,跳转toast变为跳转到我自己的app,此问题只在ios环境中会发生,有没有大佬提供解决思路?
2***@qq.com
怎么解决的?
2021-11-06 15:07
爱潜水的小白鹅
能不能分享下是怎么解决的?十分感谢
2021-11-07 14:17