H5网页在ios,android,微信中打开手机中的地图导航

摘要:
在ios浏览器、Android浏览器和微信中打开H5页面时,需要支持手机地图导航。实现leturl='if{//判断是否为Android环境url=`androidamap://navi?sourceApplication=amap&poiname=&poiid=&lat=${center[1]}&lon=${center[0]}&dev=1&style=2`}else{//判断微信环境。要使用openLocation,您需要通过后台接口获取票证以生成签名,并在wx.config.wx.openLocation中配置jsApiList({纬度:center[1],//纬度,浮点数,范围90 ~-90经度:center[0]),//经度,浮点数,范围180~-180。名称:地点,//位置名称地址:“”,//地址详细信息比例:16,//地图缩放级别,整数值,范围从1到28。

需求

  • 一个H5页面需要实现在ios的浏览器,android的浏览器以及微信中打开时支持打开手机的地图导航。

实现

let url = ''
if (myBrowser1() === 'android') { // 判断是安卓环境
    url = `androidamap://navi?sourceApplication=amap&poiname=&lat=${center[1]}&lon=${center[0]}&dev=1&style=2`
} else if(myBrowser1() === 'ios') { // 判断是ios环境
    url = `iosamap://navi?sourceApplication=amap&poiname=&poiid=&lat=${center[1]}&lon=${center[0]}&dev=1&style=2`
} else { // 判断是微信的环境,要使用openLocation需要先通过后台接口拿到ticket生成签名,并且在wx.config中配置jsApiList。
    wx.openLocation({
        latitude: center[1], // 纬度,浮点数,范围为90 ~ -90
        longitude: center[0], // 经度,浮点数,范围为180 ~ -180。
        name: place, // 位置名
        address: '', // 地址详情说明
        scale: 16, // 地图缩放级别,整形值,范围从1~28。默认为最大
        infoUrl: '', // 在查看位置界面底部显示的超链接,可点击跳转
    });
}
url && window.location.replace(url)

小结

  • 如果是自己公司做的安卓或者ios的app嵌入H5的页面,可以让安卓和ios壳子向H5页面注入相关的导航方法,这样会更好用

免责声明:文章转载自《H5网页在ios,android,微信中打开手机中的地图导航》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇微信SDK图片分享(checkArgs fail, thumbData is invalid)grib2文件格式说明下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android进入一个新页面,EditText失去焦点并禁止弹出键盘

android在进入一个新页面后,edittext会自动获取焦点并弹出软键盘,这样并不符合用户操作习惯。 在其父控件下,添加如下的属性,就可以完美解决,使其进入页面后不主动获取焦点,并且不弹出软键盘: android:focusable="true"   android:focusableInTouchMode="true" 代码如下: 1 <S...

微信公众号的文章爬取有三种方式

a. 通过微信订阅号在发布文章,可以查找公众号的文章,方式见微信链接。,阅读数、点赞数、评论数仍无法抓取。 b. 通过搜狗微信搜索微信公众号,但是文章篇幅仍然后有限制,点赞、阅读数、和评论数无法抓取。 c. 通过“中间人方式”对数据进行拦截,过滤解析后进行抓取。 这里就时利用第三种c方式对数据进行抓取。 思路: 1. 安装代理AnProxy,在手机端安装C...

iOS和Android的app界面设计规范(转)

记录一下iOS和Andoird的界面设计规范,方便进行标准的产品设计,并与设计师顺畅沟通 iOS篇 界面尺寸 设备 分辨率 状态栏高度 导航栏高度 标签栏高度 iPhone6 plus 1242×2208 px 60px 132px 147px iPhone6 750×1334 px 40px 88px 98px iPhone5/5s/...

苹果ios使用js的日期时间处理时的问题

在做微信公众号开发的时候发现,js时间处理new Date()在安卓手机正常显示,但是在苹果手机就不显示 后来查资料才知道原来是Date()内时间格式问题,ios使用如下方法获得NaN,安卓手机则是正常计算 new Date("2020-06-19").getTime() 解决方法其实很简单,只要把时间里的-换成/即可,如下所示 new Date("202...

iOS 如何在一个已经存在多个project的workspace中引入cocoapods管理第三方类库

一) 具体方法在 iOS 如何在一个存在多个project的workspace中引入cocoapods管理第三方类库 二)Question && Solution Cocoapods 版本1.0.1 我在按上述链接转换的时候,遇到的问题: 1, [!] `xcodeproj` was renamed to `project`. Please...

让x86的android模拟器能模拟arm架构系统

2019年展月6日更新: 1、最近发现了一个能在linux下模拟arm的模拟器: xdroid,网址: https://www.linzhuotech.com/index.php/home/index/down.html, 特别好用。直接模拟arm。我的云盘里有其可执行程序。 (这个需要 5G 的根目录空间,不推荐,太大了,这个是linux上运行,不是模拟...