微信中调用地图导航 可唤醒高德百度地图app(vue)

1.安装weixin-js-sdk

npm i -S weixin-js-sdk

2 获取微信授权

 import wx from 'weixin-js-sdk'
 async created() {
          //签名的URL
        let sign_url = "";
        if (window.__wxjs_is_wkwebview === true) {
            //如果当前设备是IOS
            sign_url = window.location.href.split("#")[0];
        } else {
            //非IOS设备
            sign_url = window.location.href;
        }
        //getSign()方法 为后端授权
        let res = await getSign({
            url: encodeURI(sign_url),
        });
        if (res.code === 200) {
            wx.config({
                debug: false, // 开启调试模式,
                appId: res.details.data.appId, // 必填,企业号的唯一标识,此处填写企业号corpid
                timestamp: res.details.data.timeStamp, // 必填,生成签名的时间戳
                nonceStr: res.details.data.nonceStr, // 必填,生成签名的随机串
                signature: res.details.data.signature, // 必填,签名,见附录1
                jsApiList: ["openLocation"], // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
            });
        }
  },
},
methods:{
      goMapWx() {
      wx.openLocation({
        latitude: "", // 纬度,浮点数,范围为90 ~ -90
        longitude: "", // 经度,浮点数,范围为180 ~ -180。
        name: "", // 位置名
        address: '', // 地址详情说明
        scale: 15, // 地图缩放级别,整型值,范围从1~28。默认为最大
        infoUrl: '', // 在查看位置界面底部显示的超链接,可点击跳转
      })
    },
  },
}

### 集成高德地图API到UniApp开发的微信小程序 为了在 UniApp 中集成并使用高德地图 API 进行开发,需遵循特定流程来确保功能正常运作。首先,在项目初始化阶段,应注册成为高德开放平台成员,并创建应用获取对应的 Key 值。 #### 获取高德地图Key 访问 [高德开放平台](https://lbs.amap.com/) 注册账号后登录进入控制台页面,点击“创建新应用”,按照提示完成设置即可获得用于调用接口所需的 Appkey[^1]。 #### 安装依赖包 对于基于 Vue 的框架如 UniApp 来说,推荐通过 npm 或者 yarn 方式安装官方提供的 SDK 库 `amap-js-api`: ```bash npm install amap-js-api --save ``` 或者 ```bash yarn add amap-js-api ``` #### 初始化SDK实例 在 main.js 文件里引入 AMap 并配置全局变量以便后续组件可以直接引用: ```javascript import AMap from 'AMap' Vue.prototype.$AMap = AMap; ``` #### 调用位置服务函数 利用 uni-app 提供的位置相关 api 结合高德地图能力可以轻松实现定位导航等功能。下面是一个简单的例子展示如何打开指定坐标点附近的地图详情页: ```javascript // 打开目标地点 uni.openLocation({ latitude: 39.908754, longitude: 116.39751, name: '天安门广场', address: '北京市东城区东长安街', success(res){ console.log('成功', res); }, fail(err){ console.error('失败', err); } }); ``` 需要注意的是,此方法仅适用于设备已安装支持的应用程序(比如百度地图高德地图),如果未找到匹配项则会尝试默认浏览器加载网页版地图。 另外一种方式则是直接借助于高德自身的 web service 接口查询 POI 数据等信息再做处理显示给用户查看;或者是采用其 H5 页面嵌入方案快速搭建起具备基本地理信息服务的小程序界面[^2]。 #### 地图控件自定义 除了基础的地图操作外,还可以进一步定制化交互体验,例如添加标记、绘制路径规划线路等等复杂场景下的需求满足。具体可查阅文档了解更详细的参数选项说明以及最佳实践案例分析。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值