uniApp微信小程序之——获取腾讯地图的定位功能以及解决uni-app提示getLocation 需要在app.json中生命permission字段的方法

简介: 获取腾讯地图的定位功能以及解决uni-app提示getLocation 需要在app.json中生命permission字段的方法

获取腾讯地图的定位功能

首先打开网址

腾讯位置服务 - 立足生态,连接未来

找到这三个位置并下载第3步的包

efb2eed4103940db97eab3f22be0ddb4.png

下载即可

解压完毕后有两个js文件,这里用min.js的包即可

f48ae74c02c741a1be47fd1f29784648.png

使用min.js的包放入common里

7e9f64673f2b49959d4f423ddb725270.png

用在哪个页面就在哪个页面中引入

ddcc9e34370f4bccad7105d67a05ed62.png

var QQMapWX = require('../../common/lib/qqmap-wx-jssdk.min.js');

接下来在onLoad中使用下面这段代码(当然也可以放入mounted里面)

b5b6dcbe213a4ac0ac97bff15ccb2a14.png

qqmapsdk = new QQMapWX({
            key: '申请的key'
        });

这里的秘钥需要从官网中自己创建

93fe070c6d704029ae9fee0a182d73d8.png

创建好后会自动生成秘钥复制粘贴下来即可

2c4457f0998544d18383d75614a9cde6.png

点击编辑

c0b0cf94ff3f4776885ca5959ce92a9f.png

勾选这三个√

5bcdc122970c477795b1b57f371bcace.png

保存

0dd1d0baaa034c219a57c4dbaafa4f19.png

e54b236517a84fd6a77e938d67c2e564.png

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

这里面的wgs84 uniApp官网中也给出了详细的解释

87ea3b0cf5384c4d9904a5c9392a8dfc.png

success

f8f6c6a9ff354b1895b5501f7062bd2d.png

latitude 纬度,浮点数,范围为-90~90,负数表示南纬

longitude 经度,浮点数,范围为-180~180,负数表示西经

804183ae849c48f9b3bc8cdafd54d658.png

打印结果如下:

2e0f12dcaf0f4f1e9ded06e6c4b1de23.png

拿到经纬度后通过经纬度返回他的地址

通过逆地址解析进行操作

76cc5fa9685a4db9b6ce3247f5434b2b.png

153c9ee7202c429498cd74b26e835b95.png

5e20b7ed59924bcfb72170735afef94c.png

完整代码如下 :

data(){
    return{
        qqmapsdk:{}
    }
}
onLoad() {
    this.qqmapsdk = new QQMapWX({
    key: 'XFIBZ-74JKO-3XCW3-SDVGT-FVOVF-RBFAS'
    });
    uni.getLocation({
       type: 'wgs84',
       success: (res)=> {
           console.log('当前位置的经度:' + res.longitude);
           console.log('当前位置的纬度:' + res.latitude);
      this.qqmapsdk.reverseGeocoder({
      success:(res)=>{
        console.log(res);
      }
      })
       }
    });
  },

获取成功!!

5b877bc784e3411195782ce07040dab6.png

最后渲染这个数据即可

可以创建一个空的字符串

14c041b6541d4376b860dd24f2048b43.png

6fc46909217e4656bb4bf6c6b38c6bff.png

用标签调用一下address即可完成

9d66d6d9ace84c588e9d465ebdcebf57.png

注意:这个时候的数据并不一定是你现在的地址,因为是模拟器的环境。切换到真机测试即可看到您所在的地理位置

途中出现的问题以及解决方案

如果出现以下情况,请在manifest.json中添加以下代码

e5a4f3c8535f4b4c8531d5bb321bfd91.png

"permission": {
    "scope.userLocation": {
     "desc": "你的位置信息将用于小程序位置接口的效果展示"
    }
   },

39f71bd60f7647e1afabfaab496d0d69.png


相关文章
|
9月前
|
JSON 中间件 Java
【GoGin】(3)Gin的数据渲染和中间件的使用:数据渲染、返回JSON、浅.JSON()源码、中间件、Next()方法
我们在正常注册中间件时,会打断原有的运行流程,但是你可以在中间件函数内部添加Next()方法,这样可以让原有的运行流程继续执行,当原有的运行流程结束后再回来执行中间件内部的内容。​ c.Writer.WriteHeaderNow()还会写入文本流中。可以看到使用next后,正常执行流程中并没有获得到中间件设置的值。接口还提供了一个可以修改ContentType的方法。判断了传入的状态码是否符合正确的状态码,并返回。在内部封装时,只是标注了不同的render类型。再看一下其他返回的类型;
417 3
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
5119 1
|
JSON 人工智能 算法
探索大型语言模型LLM推理全阶段的JSON格式输出限制方法
本篇文章详细讨论了如何确保大型语言模型(LLMs)输出结构化的JSON格式,这对于提高数据处理的自动化程度和系统的互操作性至关重要。
2450 48
|
JSON 人工智能 算法
探索LLM推理全阶段的JSON格式输出限制方法
文章详细讨论了如何确保大型语言模型(LLMs)输出结构化的JSON格式,这对于提高数据处理的自动化程度和系统的互操作性至关重要。
3774 52
|
JSON 小程序 UED
微信小程序 app.json 配置文件解析与应用
本文介绍了微信小程序中 `app.json` 配置文件的详细
2607 12
|
人工智能 小程序 搜索推荐
uni app下开发AI运动小程序解决方案
本文介绍了在小程序中实现AI运动识别的解决方案。该方案依托于UNI平台,通过高效便捷的插件形式,实现包括相机抽帧控制、人体识别、姿态识别等在内的多项功能,无需依赖后台服务器,大幅提高识别效率和用户体验。方案内置多种运动模式,支持自定义扩展,适用于AI健身、云上赛事、AI体测等多场景,适合新开发和存量改造项目。
|
移动开发 小程序
仿青藤之恋社交交友软件系统源码 即时通讯 聊天 微信小程序 App H5三端通用
仿青藤之恋社交交友软件系统源码 即时通讯 聊天 微信小程序 App H5三端通用
1507 3
|
小程序 前端开发 JavaScript
在线课堂+工具组件小程序uniapp移动端源码
在线课堂+工具组件小程序uniapp移动端源码
461 0
在线课堂+工具组件小程序uniapp移动端源码
|
移动开发 小程序
thinkphp+uniapp开发的多端商城系统源码/H5/小程序/APP支持DIY模板直播分销
thinkphp+uniapp开发的多端商城系统源码/H5/小程序/APP支持DIY模板直播分销
889 0