众所周知,我们在网页开发中,如果使用的是第三方地图,分享到微信中会非常不友好,用户只能网页导航或者通过第三方地图导航,如果我们使用的百度地图分享,则用户只能发起百度地图的导航,非常的不方便。

所以,为什么我们不能向给朋友发定位一样,发送一个位置,让用户自行选择使用什么导航软件进行导航呢?

答案是肯定可以的。

因为之前开发过类似项目,我就非常狭隘的认为需要通过

一、微信JS-SDK

如果要设置导航,则使用

wx.openLocation({

latitude: 0, // 纬度,浮点数,范围为90 ~ -90

longitude: 0, // 经度,浮点数,范围为180 ~ -180。

name: '', // 位置名

address: '', // 地址详情说明

scale: 1, // 地图缩放级别,整形值,范围从1~28。默认为最大

infoUrl: '' // 在查看位置界面底部显示的超链接,可点击跳转

});

1

2

3

4

5

6

7

8

wx.openLocation({

latitude:0,// 纬度,浮点数,范围为90 ~ -90

longitude:0,// 经度,浮点数,范围为180 ~ -180。

name:'',// 位置名

address:'',// 地址详情说明

scale:1,// 地图缩放级别,整形值,范围从1~28。默认为最大

infoUrl:''// 在查看位置界面底部显示的超链接,可点击跳转

});

如果是想获取用户位置,则使用获取地理位置接口

wx.getLocation({

type: 'wgs84', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'

success: function (res) {

var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90

var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。

var speed = res.speed; // 速度,以米/每秒计

var accuracy = res.accuracy; // 位置精度

}

});

1

2

3

4

5

6

7

8

9

wx.getLocation({

type:'wgs84',// 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'

success:function(res){

varlatitude=res.latitude;// 纬度,浮点数,范围为90 ~ -90

varlongitude=res.longitude;// 经度,浮点数,范围为180 ~ -180。

varspeed=res.speed;// 速度,以米/每秒计

varaccuracy=res.accuracy;// 位置精度

}

});

二、使用方法

和微信分享类似,我们需要经过认证的微信公众号,并提交安全域名,如果不会微信分享,没有操作过的,参考这篇文章:

和微信分享不同,我们不能直接通过微信分享的形式来实现地图的调用,比如:

wx.ready(function () { //需在用户可能点击分享按钮前就先调用

wx.updateAppMessageShareData({

title: '万科·翰林建面约93-116㎡VR样板间',

desc: '万科翰林,地处观山大境,紧邻三大立体交通网,地铁在旁快铁环伺优享家门口贵阳一中新世界翡翠公园学校九年公立教育万科翰林...',

link: 'https://720.gyxlck.com/wankehanlin/',

imgUrl: 'https://720.gyxlck.com/wankehanlin/logo.jpg',

success: function () {

// 设置成功

}

});

});

1

2

3

4

5

6

7

8

9

10

11

wx.ready(function(){//需在用户可能点击分享按钮前就先调用

wx.updateAppMessageShareData({

title:'万科·翰林建面约93-116㎡VR样板间',

desc:'万科翰林,地处观山大境,紧邻三大立体交通网,地铁在旁快铁环伺优享家门口贵阳一中新世界翡翠公园学校九年公立教育万科翰林...',

link:'https://720.gyxlck.com/wankehanlin/',

imgUrl:'https://720.gyxlck.com/wankehanlin/logo.jpg',

success:function(){

// 设置成功

}

});

});

我们将代码放入后,会发现代码并没有工作,这其实并不奇怪。

因为调取微信内置地图,是需要一个交互过程的,我需要在页面中设置一个按键或者其他形式的交互,绑定按键事件,通过点击来触发。

三、分享代码

代码非常简单,我是参考官方演示Demo精简更改实现的,大家可以根据自己实际开发情况进行适当的更改,比如怎么引用开发框架等问题,需要自行考虑。

页面代码

require_once "jssdk.php";

$jssdk = new JSSDK("yourAppID", "yourAppSecret");

$signPackage = $jssdk->GetSignPackage();

?>

微信一键导航

一键导航测试

通过微信内置地图一建导航

点击导航

测试位置接口

获取坐标

wx.config({

debug: false,

appId: '<?php echo $signPackage["appId"];?>',

timestamp: <?php echo $signPackage["timestamp"];?>,

nonceStr: '<?php echo $signPackage["nonceStr"];?>',

signature: '<?php echo $signPackage["signature"];?>',

jsApiList: [

'checkJsApi',

'openLocation',

'getLocation',

'updateAppMessageShareData',

'updateTimelineShareData'

]

});

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

require_once"jssdk.php";

$jssdk=newJSSDK("yourAppID","yourAppSecret");

$signPackage=$jssdk->GetSignPackage();

?>

微信一键导航

一键导航测试

通过微信内置地图一建导航

点击导航

测试位置接口

获取坐标

php微信地图定位导航,网页拉取微信内置地图(openLocation)详细教程 轻松实现一键导航 – 蓝洛水深...相关推荐

  1. php微信地图定位导航,微信小程序实现定位及到指定位置导航的示例代码

    一:实现定位及到指定位置导航所需组件及API 1:组件:map(地图组件) 2:API:wx.getLocation(Object object)(获取当前的地理位置.速度),wx.openLocat ...

  2. 企业微信-会话内容存档 实时拉取企业微信聊天记录java版SDK

    企业微信-会话内容存档 实时拉取企业微信聊天记录java版SDK git传送门 https://gitee.com/flash127/wework-msgaudit wework-msgaudit 企 ...

  3. 微信公众号内置地图开发ios苹果不显示地图

    在微信开发中遇到了安卓正常显示内置地图,但是ios苹果系统不显示,经过排查是因为ios系统调用网页时的经度和纬度必须使用Number类型的,但是安卓的可以. wx.config({debug: fal ...

  4. 微信小程序自带地图_微信小程序获取当前位置并调用微信内置地图打开

    图示: index.wxml 定位 index.js //index.js //获取应用实例 const app = getApp() Page({ data: { }, map:function() ...

  5. 微信JS接口 分享到朋友圈 分享给朋友 分享到QQ 拍照或从手机相册中选图 识别音频并返回识别结果 使用微信内置地图查看位置

    微信JS接口 微信JS接口 分享到朋友圈 分享给朋友 分享到QQ 拍照或从手机相册中选图 识别音频并返回识别结果 使用微信内置地图查看位置 来源:http://www.cnblogs.com/txw1 ...

  6. iOS内置地图导航开发指南

    0.起步 项目版本有内置地图的开发需求,因此做了一波技术预研. 0.1 MapKit MapKit是苹果的内置地图框架,目前在国内使用的是高德地图提供的服务,所以即便是内置地图,也能提供较为详细的地图 ...

  7. 微信小程序----wx.openLocation(OBJECT) 使用微信内置地图查看位置

    WXRUI体验二维码 如果文章对你有帮助的话,请打开微信扫一下二维码,点击一下广告,支持一下作者!谢谢! 开发场景 已知地点的经纬度,期望在打开的地图进行标注位置和进行开车.徒步.公交.骑行等的路线规 ...

  8. 微信小程序----使用微信内置地图查看位置wx.openLocation(Object object)

    本博客为博主原创,若需转载请联系博主征得同意.有不当之处,敬请指出,共同进步,谢谢! 使用微信内置地图查看位置wx.openLocation(Object object) 1.官方文档 wx.open ...

  9. 微信JS-SDK 分享到朋友圈 分享给朋友 分享到QQ 拍照或从手机相册中选图 识别音频并返回识别结果 使用微信内置地图查看位置

    微信JS-SDK 分享到朋友圈 分享给朋友 分享到QQ 拍照或从手机相册中选图 识别音频并返回识别结果 使用微信内置地图查看位置 一.JS部分 wx.ready(function () {// 1 判 ...

最新文章

  1. 多传感器融合之滤波(一)——卡尔曼滤波(KF)推导
  2. R语言R-markdown实战示例、R-markdown、R-markdown生成结果汇报的HTML文件
  3. 从CSDN的趣味题学PYTHON
  4. python 多进程全局变量
  5. 《学习之道》第六章关注过程,亦培养习惯
  6. 身体曲线如何反映出健康
  7. plsql表设置主键_对复制实施主键约束
  8. 日语学习-多邻国-关卡1-时间
  9. html回车完成修改,后续段落样式 WORD回车后格式自动改变
  10. mysql innodb_large_prefix_那些从MySQL5.6升级到5.7的坑--innodb_large_prefix-阿里云开发者社区...
  11. qt传值给js及js传值给qt(qt及js的交互)
  12. c#编写闭合导线简易平差程序
  13. 工业相机二次开发简约教程
  14. 使用Spark ML进行数据分析
  15. Elasticsearch 入门案例
  16. 【NanoPi T2】 6.uboot gmac网卡驱动(2) - 寄存器介绍
  17. SpringBoot集成微信支付微信退款
  18. C:L1-051 打折 (5分)
  19. 在冥冥中那些昵称是见识到
  20. SGI(Silicon Graphics )

热门文章

  1. DPK8300E+设置 (打印乱码)_七夕小子_新浪博客
  2. 非常方便的将 SVG 图标生成 TTF/EOT/WOFF/WOFF2/SVG 字体
  3. 知乎高赞:“那些花1500元买一条牛仔裤的人......”
  4. Spring WebClient 使用简介
  5. 【论文】智能隧道检测车的现状及改进策略
  6. Smart PLC与Wincc通过Simatic NET建立OPC通讯(1)
  7. 小说阅读器开发笔记(二)文本的排版与分页
  8. 如何在Windows计算机上安装和使用Apple iCloud
  9. word标题段前不生效
  10. android日程管理开题报告,基于andorid,安卓个人行程管理软件app,毕业论文设计,课程,开题报告...