uniapp小程序接入腾讯地图sdk

新建一个项目。


配置uniapp配置文件设置小程序的appid

注意:匿名用户可能存在地理定位失效。

查uniapp官网


官网->api

uni.getLocation(OBJECT)
获取当前的地理位置、速度。

属性:

success匿名函数返回值:

uni.getLocation({
    type: 'gcj02',
    success: function (res) {
        console.log('当前位置的经度:' + res.longitude);
        console.log('当前位置的纬度:' + res.latitude);
    }
});

注意:

项目中实现自动定位


在应用级生命周期位置书写定位功能

h5端配置的位置

小程序(wx)

腾讯地图开放平台申请sdk


https://lbs.qq.com/

登录开放平台——-进入控制台

申请key完成之后 赋值key密钥备用。

到公众号配置安全域名

腾讯服务器:
https://apis.map.qq.com
port default {
        methods: {
            getUserLocation() {
                console.log("111222");
                //使用定位api
                uni.getLocation({
                    type: "gcj02",
                    success(res) {
                        console.log(res);
                    },
                    fail(err) {
                        console.log(err);
                    }
                })
            },
        },
        onLaunch: function() {
            console.log('App Launch', this)
            this.getUserLocation();

        },

注意:小程序端 版本库太高也不支持 定位api。

下载腾讯sdk

下载之后解压缩 放置项目

使用qqmapsdk 将经纬度转化为中文数据。

1.引入
//引入qqmap  sdk
import QQMapSdk from '../../common/qqmap-wx-jssdk.js'
//2.实例化对象
//调用 qqmapsdk
            getUserLocationInfo() {
                //实例化qqmap
                this.QQMap = new QQMapSdk({
                    key: "OCXBZ-BSUCV-SO3PY-UYLK6-A7IJE-MJBAJ"//密钥
                });
                //在调用qqmap 对应的API

            }
3.执行对应的api
//在调用qqmap 对应的API
                this.QQMap.reverseGeocoder({
                    location: {
                        latitude: this.lat,
                        longitude: this.long
                    },
                    success(res) {
                        console.log(res);
                        let {
                            address,
                            ad_info
                        } = res.result;
                        that.address = ad_info.city ? ad_info.city : '定位失败';
                    }
                });

使用map地图组件


map

地图组件。

地图组件用于展示地图,而定位API只是获取坐标,请勿混淆两者。

<map class="map" :markers="mks" :enable-3D="true" :longitude="long" :latitude="lat"></map>
详细属性看官网
### 如何在 UniApp 开发的微信小程序中集成和调用腾讯地图的功能 #### 一、准备工作 在开始集成之前,需要完成以下准备事项: 1. **注册腾讯云账号**:前往腾讯云官网注册账号并登录。 2. **创建应用并获取密钥**:进入腾讯地图开放平台 (https://lbs.qq.com/) 创建应用,并申请相应的 API 密钥[^3]。 #### 二、集成腾讯地图UniApp 小程序 以下是详细的集成步骤: ##### 1. 安装依赖库 由于腾讯地图提供了 JavaScript SDK,可以直接通过 CDN 或者下载的方式引入。推荐使用 CDN 方便管理版本更新。 ```html <script src="https://map.qq.com/api/js?v=2.exp&key=您的Key"></script> ``` 将上述脚本标签放入 `pages.json` 的全局样式文件或者具体页面 HTML 文件头部位置。 ##### 2. 初始化地图组件 在 UniApp 中可以利用 `<web-view>` 组件加载外部网页来显示地图效果;也可以直接嵌入 H5 地图插件作为子窗口展示。 如果采用 Webview 方法,则需注意设置正确的域名白名单权限以便顺利访问远程资源。 ##### 3. 使用定位 API 获取当前位置 虽然 UniApp 自带 geolocation 接口能够满足基本需求,但如果想获得更精确的结果建议还是调用腾讯官方提供的 LBS Location Service: ```javascript const qqmapsdk = new QQMapWX({ key: '您自己的KEY' // 替换为实际申请得到的服务端SKD Key }); // 调用接口传参查询当前经纬度信息 qqmapsdk.reverseGeocoder({ success(res){ console.log('成功', res); }, fail(err){ console.error('失败', err); } }); ``` 以上代码片段展示了如何实例化一个基于 Weixin Mini Program 平台上的 Tencent Map SDK 对象并通过 reverseGeocoding 函数请求反向地理编码数据。 #### 三、注意事项 - 确保网络环境允许外链 js 加载; - 正确配置跨域资源共享 CORS 设置; - 测试阶段可能遇到缓存问题,请清除浏览器缓存后再试。 ```python print("Hello World") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值