k***@163.com
k***@163.com
  • 发布:2021-03-04 14:22
  • 更新:2021-03-04 15:00
  • 阅读:1323

在ios环境下,uniapp加入打开高德地图导航功能,会导致其他app的打开高德地图功能被覆盖为打开我的app

分类:uni-app
        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环境中会发生,有没有大佬提供解决思路?

2021-03-04 14:22 负责人:无 分享
已邀请:
k***@163.com

k***@163.com (作者)

已经解决,谢谢各位大佬

该问题目前已经被锁定, 无法添加新回复