uniapp之安卓APP打开百度地图、高德地图APP

uniapp之安卓APP打开百度地图、高德地图APP

方法:

            openNavigation(longitude, latitude, i, name) {
                let url = ""; // app url
                // 判断用户选择的地图
                switch (i) {
                    // 下面是拼接url,不同系统以及不同地图都有不同的拼接字段
                    case 1: // 打开高德地图
                        url =
                            `androidamap://viewMap?sourceApplication=appname&poiname=${name}&lat=${latitude}&lon=${longitude}&dev=0`;
                        break;
                    case 2: // 打开百度地图
                        url =
                            `baidumap://map/marker?location=${latitude},${longitude}&title=${name}&coord_type=gcj02&src=andr.baidu.openAPIdemo`;
                        break;
                }
                // 如果选中
                if (url != "") {
                    url = encodeURI(url);
                    // 打开 app 导航 
                    plus.runtime.openURL(url, (err) => {
                        // 失败回到
                        // 毕竟用户可能没有安装app但一定安装的有浏览器
                        // 如果失败则说明未安装 直接 打开网页版进行导航
                        let chooseMap = ''
                        if (i == 1) {
                            chooseMap = "高德地图"
                        } else if (i == 2) {
                            chooseMap = "百度地图"
                        }
                        uni.showModal({
                            title: '提示',
                            content: '检测到您本机暂未安装' + chooseMap + '应用,请先安装APP。',
                            showCancel: false,
                            success: function(res) {
                                console.log('成功')
                            }
                        });
                    });
                }
            },

调用:

this.openNavigation(this.endPointLonlat[0], this.endPointLonlat[1], 1, '')

 

 

 

。。。。。。钻研不易,转载请注明出处。

 

posted @ 2025-05-08 13:41  莫小龙  阅读(449)  评论(0)    收藏  举报