以文本方式查看主题 - 曙海教育集团论坛 (http://sun4.cn/bbs/index.asp) -- 软件测试 (http://sun4.cn/bbs/list.asp?boardid=70) ---- Rom 2.57+Google Maps 3.1.2 地图偏移技术讨论贴 (http://sun4.cn/bbs/dispbbs.asp?boardid=70&id=2679) |
-- 作者:wangxinxin -- 发布时间:2010-12-15 16:37:08 -- Rom 2.57+Google Maps 3.1.2 地图偏移技术讨论贴 1、国内电子地图 授权出版的国内地图,经过人为引入误差,未经任何处理的民用GPS软件上,看到的位置与实际地理坐标位置有几百米的误差。因为国内电子软件内部有误差纠正算法,所以用户感觉不到。也就是"你知道你在哪个地点,但是不知道你在哪个地理坐标上"。这些软件可以叫做“河蟹GPS软件”。 2、未经授权在国内发布的GPS软件,Google Maps就是属于此类 海外版本GPS软件(暂时叫海蟹GPS软件),并没有国内的误差纠正算法,所以,在该软件上看国内出版的地图时,就出现“你知道你在哪个地理坐标上,但是不知道你在哪个地点”。 我的测试环境及结果 经过我的测试: Google Maps 3.1.1: ROM 2.2 定位准确,前提是 MCC代码必须设为 460。 Google Maps 3.1.2: ROM 2.2/2.55/2.57 均出现偏移,无论MCC代码必须设为 460与否。 那么ROM2.2+Google Maps 3.1.1版本为什么定位准确? 经过我的分析,初步判断 Google Maps 处理中国移动/联通手机的请求(MCC国家编码 460)时,在服务器端或者本地端进行纠偏。 ROM2.57+Google Maps 3.1.2 定位偏差的纠正问题的分析 ROM 和 Google Maps 必须匹配某种组合,才能让Google Maps 正确处理 MCC为 460 的定位请求。这种组合可能涉及到: A) ROM 对坐标的处理算法模块; B) Google Maps 处理坐标的算法。 如果是 A) 的情形,通过 Patch ROM 还是可以纠偏。如果是 B),则只有依赖 Google Maps 的版本修改了。 也就是说,定位不准是由于ROM或者Google Maps程序引起的,与Google Maps服务器无关。 以上纯属简单分析后的猜测,有更熟悉的朋友请指正。 |