国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

微信小程序?qū)崿F(xiàn)獲取準確的騰訊定位地址功能示例

2019-11-19 11:56:21
字體:
供稿:網(wǎng)友

本文實例講述了微信小程序?qū)崿F(xiàn)獲取準確的騰訊定位地址功能。分享給大家供大家參考,具體如下:

官方參考文檔:https://lbs.qq.com/qqmap_wx_jssdk/index.html

逆地址解析(坐標位置描述)

1. 申請開發(fā)者密鑰(key)與設(shè)置

個人使用:登錄,點擊“key管理”,進入設(shè)置,選擇“WebServiceAPI”,如果沒有小程序ID,勾選“授權(quán)IP”,如果有小程序ID,勾選“域名白名單”,且勾選“微信小程序”,輸入授權(quán)APPID。
https://lbs.qq.com/console/key.html
企業(yè)使用:登錄企業(yè)微信公眾號,選擇“開發(fā)”-“開發(fā)者工具”,開通“騰訊位置服務(wù)”,進入后臺管理;點擊“key管理”,進入設(shè)置,勾選所需要使用的企業(yè)名下的小程序ID,選擇“WebServiceAPI”,勾選“域名白名單”。

2. 下載微信小程序JavaScriptSDK

3. 添加小程序地理位置說明

2019年1月14日起新提交發(fā)布的版本若未填寫地理位置用途說明,則將無法正常調(diào)用地理位置相關(guān)接口,請及時填寫地理位置用途說明

相關(guān)文檔:https://developers.weixin.qq.com/community/develop/doc/000ea276b44928f7e8d73d0a65b801?idescene=6

在app.json中添加以下代碼

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

4. JS 代碼

var QQMapWX = require('../../../page/common/sdk/qqmap-wx-jssdk.js');var qqmapsdk = new QQMapWX({ key: 'Key'});console.log('signin')const _this = this;wx.getLocation({    type: 'gcj02',    success: function (res) {     qqmapsdk.reverseGeocoder({      location: {       latitude: res.latitude,       longitude: res.longitude      },      success: function (addressRes) { //成功后的回調(diào)       var addressRes = addressRes.result;       console.log( addressRes.address)        },      fail: function (error) {       console.error(error);      },      complete: function (addressRes) {       console.log(addressRes);      }     })    }})

成功獲取到的信息截圖

微信開發(fā)者工具上進行測試的時候,定位不準確,需要啟用“真機調(diào)試”,在手機上即可準確獲取定位信息。

5. 百度地圖坐標轉(zhuǎn)化JS

實際應(yīng)用中發(fā)現(xiàn)騰訊地圖定位的坐標不準確,地址正確但定位坐標相差很遠,后期在地圖上進行展示的時候建議使用百度地圖,可以準確的在地圖上顯示。

代碼寫在獲取地址成功調(diào)用里面。

var addressRes = addressRes.result;var x_pi = 3.14159265358979324 * 3000.0 / 180.0;var x = parseFloat(addressRes.location.lng);var y = parseFloat(addressRes.location.lat);var z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * x_pi);var theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * x_pi);var lng = z * Math.cos(theta) + 0.0065;var lat = z * Math.sin(theta) + 0.006;console.log(lng)console.log(lat)

希望本文所述對大家微信小程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 东平县| 永丰县| 宁武县| 敦煌市| 景宁| 贵州省| 收藏| 平湖市| 宁波市| 喀喇| 察隅县| 丁青县| 吉木萨尔县| 伊金霍洛旗| 牟定县| 博兴县| 游戏| 拜城县| 濮阳市| 和静县| 南皮县| 韩城市| 彭水| 富锦市| 临江市| 沾化县| 锦州市| 泰州市| 宜宾县| 浦东新区| 宁河县| 崇州市| 桦甸市| 榆林市| 新野县| 阿勒泰市| 新民市| 中方县| 茌平县| 舒城县| 宝清县|