高德地图通知《关于2019年4月7日GPS周数翻转的情况说明》

[位置服务LBS] 季雨林 2019/4/3 21:28:59

尊敬的开发者:

 



北京时间2019年4月7日8时起,由于全球定位系统(GPS)的周数翻转事件(GPS Week Number Rollover),部分GPS芯片会因未对“GPS周数翻转”进行兼容处理,导致从GPS中获取的日期持续错误。

 



此事件为小概率事件,大部分新款智能手机及芯片不会遇到该问题,但不排除个别手机及芯片未对该问题进行兼容处理。为避免影响开发者使用,现将本次问题的原因、影响、解决方案公布如下,如开发者遇到类似情况可供参考。

 



一、问题原因

 



本次事件是由于GPS用来处理导航信号的周元素(Week Element)的方式引起的一个已知问题。GPS采用10比特定义域来对每个GPS时间信息中的周数进行编码,最多可以处理1024个周,这个期间被称为一个Epoch。在每个Epoch的结束时,接收机将周数复位为第0周,然后再次开始计数。GPS第一次周数清零时间为1999年8月22日,第二次清零为2019年4月7日。(注:因不同厂商GPS芯片内部处理逻辑不同,日期可能为1999年8月22日或其他错误日期)

 



二、影响产品

 



Android 定位SDK4.5.0及以下版本

 



三、影响点

 



1. 使用上述高德定位SDK获取到的定位类型为GPS定位的定位点时间,部分设备会返回错误日期。

 



2. 下游业务逻辑依赖此时间进行逻辑处理的,会导致判断异常。

 




四、解决方案

 



针对本次事件,在GPS周数翻转时刻,高德开放平台将采用系统时间和GPS对比的方法,如果二者相差超过一年,则时分秒取GPS时间,年月日取系统时间,以解决周数翻转带来的时间跳变问题使开发者内部用错时间。

 



五、建议修复方式

 



方案一:自主排查GPS定位时间的使用范围,当该时间参与业务逻辑时,需要添加如下兼容逻辑。

 



点击查看示例代码>>

 



方案二:更新至新版Android 定位SDK(新版本已于4月2日发布)。

 



点击下载新版Android 定位SDK>>

 



高德开放平台

 



2019年4月3日



原文地址: https://www.opengps.cn/Blog/View.aspx?id=288 文章的更新编辑依此链接为准。欢迎关注源站原创文章!

评论

暂无评论!

发表评论:

用于接收作者回复信息
点击更换验证码 - openGPS提示