获取用户当前所在位置

1. 授权并获取经纬度

调用 wx.getLocation 来进行授权,使用此属性时应注意在App.json文件中进行配置

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

这是提示用户要干嘛的弹窗信息

wx.getSetting 判断用户是否已授权,

   // 定位position() {wx.getSetting({success: (res) => {// res.authSetting['scope.userLocation'] == undefined  表示 初始化进入该页面// res.authSetting['scope.userLocation'] == false  表示 非初始化进入该页面,且未授权// res.authSetting['scope.userLocation'] == true  表示 地理位置授权if (res.authSetting['scope.address.userLocation'] != undefined && res.authSetting['scope.address.userLocation'] != true) {wx.showModal({title: '请求授权当前位置',content: '需要获取您的地理位置,请确认授权',success: function (res) {if (res.cancel) {wx.showToast({title: '拒绝授权',icon: 'none',duration: 1000})} else if (res.confirm) {wx.openSetting({success: function (dataAu) {if (dataAu.authSetting["scope.userLocation"] == true) {wx.showToast({title: '授权成功',icon: 'success',duration: 1000})//再次授权,调用wx.getLocation的API} else {wx.showToast({title: '授权失败',icon: 'none',duration: 1000})}}})}}})     //再次授权,调用wx.getLocation的API} else if (res.authSetting['scope.address.userLocation'] == undefined) {wx.getLocation({altitude: 'altitude',})} else {wx.getLocation({altitude: 'altitude',})}}})},

调用:

  lifetimes: {created() {console.log("在组件实例刚刚被创建时执行")this.position() // 判断是否已权},attached() {console.log("在组件实例进入页面节点树时执行")},},

2. 使用腾讯地图API把经纬度传上去返回城市名称

  1. 申请开发者密钥(key): 申请密钥

  2. 开通webserviceAPI服务:控制台 ->应用管理 -> 我的应用->添加key-> 勾选WebServiceAPI -> 保存

    • 没有应用的创建一个应用,名字随便起
    • 添加key
    • 勾选WebServiceAPI
    • 确定
  3. 下载微信小程序JavaScriptSDK,微信小程序JavaScriptSDK v1.1

  4. 安全域名设置,在小程序管理后台 -> 开发 -> 开发管理 -> 开发设置 -> “服务器域名” 中设置request合法域名,添加https://apis.map.qq.com

  5. 然后开始写代码,首先引入你下载的 :JavaScriptSDK v1.1,里面的文件,在生命周期函数中进行初始化

    // 引入SDK核心类,js文件根据自己业务,位置可自行放置
    var QQMapWX = require('../../libs/qqmap-wx-jssdk.js');
    var qqmapsdk;onLoad: function () {// 实例化API核心类qqmapsdk = new QQMapWX({key: '申请的key'});},// 组件中lifetimes: {created() {console.log("在组件实例刚刚被创建时执行")qqmapsdk = new QQMapWX({key: 'OE3BZ-HBHKS-7MCOR-6DNJY-7FG73-ORBKE'})this.position()this.getLocations()},attached() {console.log("在组件实例进入页面节点树时执行")},},
    
  6. 创建一个函数,根据经纬度获取城市名称

        // 获取经纬度getLocations() {wx.getLocation({type: 'wgs84',success: (res) => {console.log(res);var latitude = res.latitude    // 获取经纬度var longitude = res.longitudeqqmapsdk.reverseGeocoder({    // 转换location: {latitude: latitude,longitude: longitude},success: (res) => {console.log(res.result.address_component);this.setData({city: res.result.address_component.city})}})}})}
    
      data: {city: '' // 城市名称},
    

微信小程序获取用户当前所在位置相关推荐

  1. 微信小程序-获取用户位置(经纬度+所在城市)

    微信小程序-获取用户位置(经纬度+所在城市) 文章目录 微信小程序-获取用户位置(经纬度+所在城市) 一.目标 二.实现思路 三.实现步骤 3.1 用到的接口函数 3.2 具体步骤 3.2.1 创建界 ...

  2. 微信公众号/微信小程序获取用户信息以及推送微信模版消息_MQ

    微信公众号/微信小程序获取用户信息以及推送微信模版消息_MQ 一.获取用户信息 1.首先我们需要了解什么是微信用户的OpenID 在关注者与公众号产生消息交互后,公众号可获得关注者的OpenID(加密 ...

  3. 微信小程序python解析获取用户手机号_微信小程序获取用户手机号

    获取微信用户绑定的手机号,需先调用wx.login接口. 小程序获取code. 后台得到session_key,openid. 组件触发getPhoneNumber 因为需要用户主动触发才能发起获取手 ...

  4. 微信小程序获取用户手机号--官方示例

    微信小程序获取用户手机号–官方示例 https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/getPhoneNu ...

  5. 微信小程序 获取用户信息并保存登录状态

    微信小程序 获取用户信息并保存登录状态:http://www.360doc.com/content/18/0124/11/9200790_724662071.shtml 转载于:https://www ...

  6. 微信小程序获取用户信息

    微信小程序获取用户信息 微信小程序获取用户信息接口做了调整: 2021年4月28日24时后发布的小程序新版本,无法通过wx.getUserInfo与获取用户个人信息(头像.昵称.性别与地区),将直接获 ...

  7. 微信小程序获取用户信息-头像、昵称......

    微信小程序获取用户信息-头像.昵称等,并出现弹窗提示授权 目录 微信小程序获取用户信息-头像.昵称等,并出现弹窗提示授权 1.wx.getUserProfile文档 2.代码演示 3.演示过程(图示) ...

  8. uniapp微信小程序怎样获取宽高?获取系统信息?微信小程序 获取用户手机屏幕高度与宽度信息等

    第一种方案(推荐) "vw" = "view width" "vh" = "view height" 使用 CSS3 引 ...

  9. 微信小程序获取用户信息更新解决方案

    微信小程序获取用户头像和昵称更新了,以下代码是兼容旧版本微信和新版本微信的解决方案,仅供参考 直接上代码 <template><!-- 顶部用户信息显示 --><view ...

最新文章

  1. android 点击字体,图片背景效果一起变换Demo
  2. 为什么要实施服务器虚拟化
  3. 剖析三大个人IM工具安全隐患
  4. 【论文写作】毕业论文写作的基本流程
  5. 关于iOS 热更新(热修复)你必须知道的一种方法- JSPatch
  6. 多线程模拟实现生产者/消费者模型 (借鉴)
  7. 智能优化算法:算术优化算法-附代码
  8. ArcGIS学习总结(18)——面要素/矢量拆分
  9. 鸿蒙os运行内存,体验亮点满满!鸿蒙OS系统6月份开启适配,不只有华为手机
  10. 【小伟哥AI之路】海康摄像头近距离不能对焦模糊问题
  11. c php数据,PHP如何与C进行数据交互
  12. 删掉启动分区进不了系统,复活办法(win10)
  13. 数学基础之列联表分析2——独立性检验(卡方检验)
  14. 不删除磁盘内容,如何给C盘扩容
  15. python计算2的平方代码_Python练习实例46 | 求输入数字的平方,如果平方运算后小于 50 则退出。...
  16. Hacking Tools搜罗大集合
  17. pandas 计算累计和及累计占比
  18. VM虚拟机Ubuntu21.04 升级为22.04
  19. 全球人口密度大致分布
  20. python新手怎么兼职-初学Python到月入过万最快的兼职途径(纯干货)

热门文章

  1. 微信小程序 后台播放,多页面播放
  2. Java5、8、9章复习 5.6
  3. 核酸检测预约和结果查询系统
  4. Open-Domain Question Answering相关部分论文阅读摘要
  5. Linux系统ssd硬盘擦除,如何实现安全擦除 _固态硬盘小Z聊固态-中关村在线
  6. [转]体育运动比赛英语
  7. 卡马克揭开VR延迟背后的真相
  8. 乔布斯往事:游戏之神卡马克眼中的“英雄和傻瓜”
  9. 关于sqlldr官方教材上的几个例子ulcase study1-9
  10. CraftManager for Mac(PS/sketch自动填充神器)特别版