谷歌地图经纬度定位定位的经纬度数据都不同,如何获得最准确的

标签:至少1个,最多5个
很多时候要定位到当前所在的位置,谷歌地图 API 没找到,然后网上搜的是通过原生js geolocation来实现的。
代码如下:
&!DOCTYPE html&
&meta charset="UTF-8"&
&title&&/title&
&div id="demo"&&/div&
&script type="text/javascript"&
var x=document.getElementById("demo");
getLocation();
function getLocation()
if (navigator.geolocation)
navigator.geolocation.getCurrentPosition(showPosition);
else{x.innerHTML="Geolocation is not supported by this browser.";}
function showPosition(position)
var lng = position.coords.
var lat = position.coords.
var site = lat.toFixed(6)+','+lng.toFixed(6);
console.log(site)
document.getElementById("demo").innerHTML =
当发现能实现之后,确实是内心特别欣喜。然而,放到服务器端,就会有警告提示:
getCurrentPosition() and watchPosition() are deprecated on insecure origins. To use this feature, you should consider switching your application to a secure origin, such as HTTPS. See https://goo.gl/rStTGz for more details.
翻译一下,大致意思如下:getCurrentPosition() 和 watchPosition()这两个方法在不安全的环境下不建议使用,在以后的规范可能不会支持。你应该考虑appliaction的安全性,比如使用https。详细情况请看
因为获取位置信息,以及监控位置的变化这些操作都属于敏感性操作,所以browsers在执行都会非常谨慎。它需要你在安全的环境并且获取用户的同意才会执行。所以,用https协议 会正常显示的。
谷歌了好久,貌似都是这个意思,如果大家有其它办法,还望赐教。O(∩_∩)O~
1 收藏&&|&&5
你可能感兴趣的文章
5 收藏,1k
40 收藏,46.4k
7 收藏,5.2k
本作品采用 署名-非商业性使用-禁止演绎 4.0 国际许可协议 进行许可
分享到微博?
技术专栏,帮你记录编程中的点滴,提升你对技术的理解收藏感兴趣的文章,丰富自己的知识库
明天提醒我
我要该,理由是:||||||||||||||||||
查看: 5570|回复: 19
在线时间144 小时经验值249 最后登录注册时间帖子阅读权限50UID4917867
大学专科, 积分 249, 距离下一级还需 151 积分
该用户从未签到
G币341 最后登录注册时间
本帖最后由 wxr222 于
15:08 编辑
P4G刚到手时GPS寻星极快,谷歌地图一打开就定位了,正常可见12颗星.
但是刷了新的ROM,就不断有问题,先是定不了位,改了那个GPS文件好了点,又刷了新的ROM,正好碰到谷歌服务器上不了.现在谷歌服务恢复了,定位很慢,勉强定位后(只有几颗星),谷歌地图又发生漂移,前一阵网上查到过一个修改什么市场参数的方法,很管用,但是因刷机刪了那个小工具,现在找不到了。
不知还有什么方法解决谷歌地图漂移问题。经常出差在外,地图很有用,现在不好用了,烦啊.
早知道有这么多问题,也就不去尝新刷什么新的ROM(HB)了.
在线时间66 小时经验值158 最后登录注册时间帖子阅读权限40UID5739073
高中生, 积分 158, 距离下一级还需 42 积分
该用户从未签到
G币312 最后登录注册时间
小手一抖 啥都没有
在线时间66 小时经验值158 最后登录注册时间帖子阅读权限40UID5739073
高中生, 积分 158, 距离下一级还需 42 积分
该用户从未签到
G币312 最后登录注册时间
小手一抖 啥都没有
在线时间144 小时经验值249 最后登录注册时间帖子阅读权限50UID4917867
头像被屏蔽
大学专科, 积分 249, 距离下一级还需 151 积分
该用户从未签到
G币341 最后登录注册时间
提示: 该帖被管理员或版主屏蔽,只有管理员或有管理权限的成员可见
幼儿园的小朋友跟大哥哥捣什么乱啊.
在线时间282 小时经验值313 最后登录注册时间帖子阅读权限50UID841998
大学专科, 积分 313, 距离下一级还需 87 积分
TA的每日心情开心 15:57签到天数: 14 天[LV.3]偶尔看看II
G币420 最后登录注册时间
小手一抖 啥都没有
在线时间144 小时经验值249 最后登录注册时间帖子阅读权限50UID4917867
大学专科, 积分 249, 距离下一级还需 151 积分
该用户从未签到
G币341 最后登录注册时间
再抖小手,砍掉你的手!
在线时间144 小时经验值249 最后登录注册时间帖子阅读权限50UID4917867
头像被屏蔽
大学专科, 积分 249, 距离下一级还需 151 积分
该用户从未签到
G币341 最后登录注册时间
提示: 该帖被管理员或版主屏蔽,只有管理员或有管理权限的成员可见
找到一篇几年前的文章,这是真的吗?现在的情况也是这样吗?
谷歌地图玩漂移,到底忽悠了谁?
yanlb.12.05), 发表
想必大家都知道甚至用过Google Maps这个很有特色的地图服务。Google Maps还有手机版,可以方便地查看地图、查询交通线路、搜索周边地区等等,真的是很好很强大。配合GPS卫星定位,手机版Google Maps可以达到十米左右的定位精度,定位是相当准确了。我是很喜欢用的,有事没事经常打开Google Maps随便看看。Google Maps在中国地区的服务称为谷歌地图。
然而,最近一段时间以来,自从我升级到某个版本的谷歌地图之后,突然发现,GPS定位产生了重大的偏差。在上海地区,定位点比实际位置要往西北方向偏移几百米甚至一公里左右。要知道,GPS的定位精度是很好的,在室外一般能接收到5、6颗或更多卫星,而定位精度实际误差也就10米左右或更小。而现在竟然有这么大的误差,那显然是某个地方出现问题了。
是GPS系统出错了?打开一个导航软件,比如凯立德,发现定位是一路既往地准确。所以,无论是GPS卫星信号系统,还是我手机的GPS接收端,都是好的。
那应该是谷歌地图软件出错了,导致谷歌地图玩起了漂移。接着追问,是这个新版客户端软件出错,还是谷歌服务器端地图数据出现差错了?
我不得不这么追问,因为谷歌地图是我很喜欢用的一个功能,而现在的情况让我几乎没法使用了。我必须解决这个问题。
上网一查,发现抱怨这个问题的网友非常非常之多。大致情况是,新版(3.x)的谷歌地图,无论是国际版还是中国版,都出现了严重定位偏差。而且,不光是上海,全国几乎所有城市都有这个情况,而偏差的方向、程度还各有不同。
有的说,最新版的谷歌地图已经解决了这个问题。但我下载安装之后,还是老样子。
有的说,老版本(2.x)还是好的。我尝试了一下2.4.0.9版,还真是这样,这个定位就基本准确了。但是,老版本没有3.x新增的纵横功能(Google Latitude)。这个功能可以把使用者的位置与其他朋友共享,时刻知道朋友们在哪里。这个功能很酷,我喜欢。虽说有涉嫌暴露隐私之嫌,但偶尔玩玩还是很有趣很实用的。
经过反复安装、删除、测试,反正最后我只能用老版本的谷歌地图了。新版本虽然功能更多更完善,但这地图漂移也太厉害了,没法用呀。
而我在网上查找解决方案的时候,在少数网友留言中,我觉察到了谷歌地图漂移的一些背景情况。很可能,这不是个简单的技术问题。说穿了,这个偏差,多数是故意造成的。据说是,按照中国政府的保密要求,在中国公开出版的地图不能太精准,必须加入一定的偏差才行。这个说法,还早在电子地图出现之前,我就听说了。公开出版的地图不能太精准,必须制造些偏差,详尽的大比例地图也是不允许的。现在Google在中国推出地图服务,也是被迫服从这一规定。
那为何老版本的谷歌地图定位是准确的,但新版是偏差的?我分析是,老版本中,其实地图数据和定位点都已经作了相同的偏移,两者能很好地吻合起来。但在新版本中,中国地区的地图数据还是加入了人为偏移量,但从GPS采集的定位点数值并未被偏移就直接放到地图上了,这样当然就导致不吻合的情况了。这只是我的个人分析,不知实情到底如何。但估计也不外乎是这方面的原因。
而且,我不知道新版本的漂移现象,仅仅是开发中的疏忽,还是故意而为之。如果是疏忽,那就是个Bug,迟早会改正,象旧版本那样对定位点也加入正确的偏移量。如果是后者,是故意的,那就没戏了?偏移那么多,这还怎么玩?
总结这次谷歌地图玩漂移的事故,如果正式这个原因,那么还真没法怪Google或说谷歌。
所以,我们来分析一下,这个根本的原因,就是国内地图不能太准确的规定,究竟是否合理,有何必要?
先探究这个规定的原因,那显然应该是出于国家安全的考虑,不能让过于准确的地图信息公开出来,以防敌国或敌对分子利用。可是,这都什么年代了,这样的理由,还站得住脚么?
是为了防止敌国拿到准确的地图数据?防范飞机轰炸导弹袭击?谁都知道,现在卫星技术是多么发达了。各国的间谍卫星早就把全球地貌扫描了多少遍了,而其精度也是传说得很神奇了,至少地面上的人呀、车呀啥的全分得清,据说车牌号都能看清。就比如Google Maps、Google Earth吧,其民用的、公开的地图数据,都已经达到米级了,那你说,美国军方掌握的世界各国的地图数据,那还要精确更多了吧?
你看看人家老美,人家不但把你的地图数据掌握得得清清楚楚,而且,还公开出来让全世界免费使用,人家就根本不在乎你知道他已经知道你很多很多(有点拗口?)。这是什么样的自信和大度?
在这种情况下,你还迂腐到要求国内出版的地图不能太精确,这还有什么用?你到底遮住了谁的眼睛、耳朵?这不是最明显的掩耳盗铃、自欺欺人么?除了妨碍本国人民的使用,还能有什么实际效果?
继续分析。既然这种规定对防范“敌国”没用,那么是否还是有助于防止破坏分子(新时代新名词下该叫做恐怖分子)呢?对于恐怖分子来说,他们多数不玩飞机导弹,目标的精确的经纬度信息并不实用。他们需要知道的,就跟我们平常人差不多,就是这个目标所在的城市、街道位置,周围的建筑物分布,等等。这些,都只是相对定位,不需要用GPS等来进行绝对精确的经纬度定位。所以,将地图的经纬度偏移一些,对恐怖分子也没用。
所以,真的该问一问,这谷歌地图被迫玩漂移,到底忽悠了谁?
作为一个谷歌地图的普通使用者,我并不需要知道精确的、绝对的经纬度数据,不管是我当时的位置,还是某个公园、银行、公司的位置。所以,你要求地图漂移,那就漂吧。我只希望,地图漂了,谷歌地图上“我的位置”也相应地漂一下,能让我知道现在的准确位置就行了。
在线时间191 小时经验值375 最后登录注册时间帖子阅读权限50UID1187750
大学专科, 积分 375, 距离下一级还需 25 积分
该用户从未签到
G币213 最后登录注册时间
用百度离线地图,很准不走流量,定位快!
在线时间144 小时经验值249 最后登录注册时间帖子阅读权限50UID4917867
大学专科, 积分 249, 距离下一级还需 151 积分
该用户从未签到
G币341 最后登录注册时间
有谁知道那个改参数的小软件?
当时也是网上搜到的,现在搜不到了,忘了名字
在线时间457 小时经验值268 最后登录注册时间帖子阅读权限50UID2391381
大学专科, 积分 268, 距离下一级还需 132 积分
该用户从未签到
G币298 最后登录注册时间
再抖小手,砍掉你的手!
浏览过的版块
Powered by当前位置: →
→ 百度谷歌地图经纬度偏移解决办法:gps纠偏数据库纠偏
百度谷歌地图经纬度偏移解决办法:gps纠偏数据库纠偏
& 作者及来源: lbsbase - 博客园 &
&收藏到→_→:
摘要: (百度、谷歌)地图经纬度偏移解决办法:gps纠偏数据库纠偏!
"百度谷歌地图经纬度偏移解决办法:gps纠偏数据库纠偏"::
(百度、谷歌)地图经纬度偏移解决办法:gps纠偏纠偏!
中国地图经纬度偏移修正,精度:0.01精度,数据量:9813676 条。
使用方法:
1、假设原始gps数据为(73..368888)
2、查询:select * from offset where lng=73.52 and lat=39.36,得出offsetlat、offsetlng
3、用原始的lat加上offsetlat,lng加上offsetlng,得出纠偏后的经纬度,可以直接在google地图上显示正确位置了。
以上方法,百度地图和谷歌地图通用,但是纠偏是完全不同的,原因可以查看,有详细的说明!
我们已经开发以下:纠偏(google地图)精度为0.01:经纬度每变化0.01,取一次偏移值,共980万条,access文件约600mb,误差5~10米。
精度为0.001:经纬度每变化0.001,取一次偏移值,共9亿条,csv文件共20gb,误差约2米。
百度地图纠偏
精度0.01,共2800万条
全国谷歌、mapabc数据poimapabc地图(谷歌)全国兴趣点poi商户数据共1500多万条,包含地址、电话、经纬度、类别,csv格式。
全国百度数据poi超过2000万条
&搜索此文相关文章:纠偏此文来自: 马开东博客
网址: 站长QQ
百度谷歌地图经纬度偏移解决办法:gps纠偏数据库纠偏_博客园相关文章
博客园_总排行榜
博客园_最新
博客园_月排行榜
博客园_周排行榜
博客园_日排行榜java google map 根据经纬度 获取地址今天使用android自带的Geocoder类 发现获取的地址信息总是为空,查了半天没找到原因,还是用url接口吧&下面的是代码示例google map 的反响地址解析是指在已知经纬度的条件下由google map解析出该地址的具体位置。举个例子来说,在知道经纬度(&31.&P,&120.4019789&P)解析后的结果是&中华人民共和国江苏省无锡市江阴市富南路江阴市针织服装厂&。google map提供的反向地址解析的地址有两个,一个是还有一个是,这两个我都做了测试,前一个地址对于大部分中国的地址都能够正常解析,但有少部分解析出的结果是乱码(比如上面的地址),第二个目前测试还没有发现问题,地址都能正常解析。下面给出代码,希望对大家有所帮助,如在测试过程中遇到问题也请与我联系import java.io.BufferedRimport java.io.IOEimport java.io.InputStreamRimport java.net.MalformedURLEimport java.net.URL;import java.net.URLCpublic class Test {public static void main(String[] args) {    String addr = geocodeAddr("31.", "120.4019789");// (38..612382);    System.out.println(addr);  }/*** 根据经纬度反向解析地址,有时需要多尝试几次* 注意:(摘自:/intl/zh-CN/apis/maps/faq.html* 提交的地址解析请求次数是否有限制?) 如果在 24 小时时段内收到来自一个 IP 地址超过 15,000 个地址解析请求, 或从一个 IP* 地址提交的地址解析请求速率过快,Google 地图 API 编码器将用 620 状态代码开始响应。 如果地址解析器的使用仍然过多,则从该 IP* 地址对 Google 地图 API 地址解析器的访问可能被永久阻止。*&* @param latitude*&&&&&&&&&&& 纬度* @param longitude*&&&&&&&&&&& 经度* @return*/public static String geocodeAddr(String latitude, String longitude) {String addr = "";// 也可以是/maps/geo?output=csv&key=abcdef&q=%s,%s,不过解析出来的是英文地址// 密钥可以随便写一个key=abc// output=csv,也可以是xml或json,不过使用csv返回的数据最简洁方便解析String url = String.format("/maps/geo?output=csv&key=abcdef&q=%s,%s",latitude, longitude);URL myURL =URLConnection httpsConn =try {  myURL = new URL(url);} catch (MalformedURLException e) {  e.printStackTrace();  }try {  httpsConn = (URLConnection) myURL.openConnection();  if (httpsConn != null) {    InputStreamReader insr = new InputStreamReader(httpsConn.getInputStream(), "UTF-8");    BufferedReader br = new BufferedReader(insr);    String data =    if ((data = br.readLine()) != null) {      System.out.println(data);      String[] retList = data.split(",");      if (retList.length & 2 && ("200".equals(retList[0]))) {        addr = retList[2];        addr = addr.replace("\"", "");      } else {        addr = "";      }    }  insr.close();  }} catch (IOException e) {  e.printStackTrace();  }  }}
阅读(...) 评论()}

我要回帖

更多关于 谷歌地图查经纬度 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信