文档章节

android和ios中webview获取精确定位的方案

狗陈
 狗陈
发布于 2016/04/08 22:56
字数 473
阅读 1025
收藏 7

最近项目上碰到需要在webview中获取当前位置的地方,最开始是通过在h5中使用navigator.geolocation定位的方式,发现在部分安卓手机上获取不了定位的经纬度。

调整了,由IOS或者安卓获取到经纬度,然后放到webview的url中。然后使用百度地图的JS API进行坐标转换获得当前的地址,但是发现总有偏差。 类似这儿的示例:http://developer.baidu.com/map/jsdemo.htm#a5_2

var convertor = new BMap.Convertor();
        var pointArr = [];
        pointArr.push(ggPoint);
        convertor.translate(pointArr, 1, 5, translateCallback)

最近在测试的时候,发现这个确实个问题,就了解一下定位的经纬度,安卓使用百度定位sdk,返回的是GCJ-02坐标系,查了一下IOS定位坐标,貌似在国内使用的高德地图,也是返回的GCJ-02坐标。

但我在百度地图JS API的文档里面找,没有找到convertor.translate中的参数具体是指什么,在什么地方指定参数是什么坐标系。

最后看了一下WEB API,发现地址转换相当简单,使用如下地址就搞定了: http://api.map.baidu.com/geocoder/v2/?ak=qOgzH9SduWmfjSjMoHDMkSQ9tol4Zf9n&location=30.557046,104.071744&output=json&coordtype=gcj02ll

其中location是经纬度,output是返回格式,coordtype就是指定参数坐标系类型,并且结果相当精确。 终于解决了在webview中的定位问题,特此记录。

{
status: 0,
result: {
location: {
lng: 104.07823744785,
lat: 30.563013004601
},
formatted_address: "四川省成都市武侯区西蜀廊桥",
business: "",
addressComponent: {
adcode: "510107",
city: "成都市",
country: "中国",
direction: "",
distance: "",
district: "武侯区",
province: "四川省",
street: "西蜀廊桥",
street_number: "",
country_code: 0
},
poiRegions: [ ],
sematic_description: "成都远方之家连锁公寓新会展店北94米",
cityCode: 75
}
}

© 著作权归作者所有

狗陈
粉丝 12
博文 72
码字总数 31102
作品 0
成都
高级程序员
私信 提问
在 Flutter 中使用 WebView

本文示例代码可在微信公众号「01二进制」后台回复「WebView」查看下载 前言 我们知道在开发 Native App 时经常会有打开网页的需求,可供的选择通常只有两种: 在 App 内部打开网页 通过调用系...

雇个城管打天下
08/07
0
0
iOS与Android平台上问题列表

问题列表 伪类 :active 生效 要CSS伪类 生效,只需要给 document 绑定 或 事件 消除 transition 闪屏 两个方法 消除 IE10 里面的那个叉号 来源出处:http://msdn.microsoft.com/en-us/libra...

陈文亮
2015/03/01
7
0
iOS WKWebView返回上一页,不重新加载ready的处理

问题场景:在使用WKWebView时,活动A --->活动B,然后从活动B返回--->活动A,此时活动A页面空白或者只有加载框。而安卓那边则不会。 排查时发现:活动A是根据JS调用判定来执行后续UI选择,但...

飞翔的熊blabla
02/26
0
0
驰骋工作流引擎-CCMobile与安卓、IOS集成过程中的问题与解决方案

CCMobile与安卓、IOS集成过程中的问题与解决方案 前言: CCMobile(2019版本)是CCFlow&JFlow 的一款移动端审批的产品。系统基于mui框架开发,是一款可以兼容Android与IOS的移动端工作流审批...

孟娟
06/26
76
0
Phonegap各类商业插件

【Phonegap商业插件服务】[目前插件已经支持到Phonegap最新版本] 1.phonegap-百度社会化分享-andriod插件 v2.0 【该插件支持微信分享和朋友圈分享,qq好友分享,微博分享】 2.phonegap百度社...

夜澜小雨
2015/07/15
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

前端技术之:Prisma Demo服务部署过程记录

安装前提条件: 1、已经安装了docker运行环境 2、以下命令执行记录发生在MackBook环境 3、已经安装了PostgreSQL(我使用的是11版本) 4、Node开发运行环境可以正常工作 首先需要通过Node包管...

popgis
今天
5
0
数组和链表

数组 链表 技巧一:掌握链表,想轻松写出正确的链表代码,需要理解指针获引用的含义: 对指针的理解,记住下面的这句话就可以了: 将某个变量赋值给指针,实际上就是将这个变量的地址赋值给指...

code-ortaerc
今天
4
0
栈-链式(c/c++实现)

上次说“栈是在线性表演变而来的,线性表很自由,想往哪里插数据就往哪里插数据,想删哪数据就删哪数据...。但给线性表一些限制呢,就没那么自由了,把线性表的三边封起来就变成了栈,栈只能...

白客C
今天
43
0
Mybatis Plus service

/** * @author beth * @data 2019-10-20 23:34 */@RunWith(SpringRunner.class)@SpringBootTestpublic class ServiceTest { @Autowired private IUserInfoService iUserInfoS......

一个yuanbeth
今天
5
0
php7-internal 7 zval的操作

## 7.7 zval的操作 扩展中经常会用到各种类型的zval,PHP提供了很多宏用于不同类型zval的操作,尽管我们也可以自己操作zval,但这并不是一个好习惯,因为zval有很多其它用途的标识,如果自己...

冻结not
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部