uniapp微信获取位置,具体城市信息

我们在小程序以及app内经常会一进入就获取当前城市,只用uniapp的getlocation只能获取到经纬度,那么如何通过经纬度获取当前位置呢(文章中使用腾讯地图)

一.在项目的mainfest.json中找到配置位置的地方(小程序)

在这里插入图片描述

二.使用uni.getlocation方法获取到当前的经度以及纬度。

	uni.getLocation({
    success: (res) => {
      console.log(res);
      this.latitude=res.latitude;			//获取到的纬度
      this.longitude =res.longitude;		//获取到的经度
    },
    fail:(res)=>{
      uni.showToast({
        title:'获取位置信息失败',
        icon:'none'
      })
    }
  })

三.引入腾讯地图的sdk

  https://lbs.qq.com/mobile/androidLocationSDK/androidGeoDownload  注册腾讯地图获取到免费的key值,下载js至项目中

在这里插入图片描述
在需要使用的页面引入js
在这里插入图片描述
key内填写腾讯地图申请的key值

四.使用腾讯地图获取当前具体位置信息

QQMapWX.reverseGeocoder({
            location: {
              latitude: this.latitude,
              longitude: this.longitude
            },
            success: (res) => {
              var cityName = res.result.address_component.city;		//获取到的城市名
              console.log(res);
            }
          })
          
  这样就获取到了位置信息
  
  
获取地址的完整代码:
onShow() {
  uni.getLocation({
    success: (res) => {
      console.log(res);
      var latitude=res.latitude;
      var longitude =res.longitude;
      QQMapWX.reverseGeocoder({
        location: {
          latitude: latitude,
          longitude: longitude
        },
        success: (res) => {
          var cityName = res.result.address_component.city;
          this.cityName=cityName ;
          console.log(res);
        }
      })
    },
    fail:(res)=>{
      uni.showToast({
        title:'获取位置信息失败',
        icon:'none'
      })
    }
  })
},
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值