Android AP侧和Modem侧日志时间差异大

7 篇文章 2 订阅

Android手机的时区设置为+8,那么理论上对比AP侧和Modem侧日志,只需要将AP侧logcat中的时间减去8小时即可匹配上Modem侧日志的时间。

[persist.sys.timezone]: [Asia/Shanghai]

在分析日志过程中,发现AP侧匹配Modem侧时间对不上。

# AP侧日志
06-16 19:33:47.184 - **** delete aiding data 65535

# QXDM读出的Modem日志
11:34:07.412313   Deleting aiding data

时间对不上的话,那就是Modem时间相比AP时间整体发生了偏移,不可能只有一处对不上。

因此,我们可以找到一处能够提供这段差异的日志即可。

下面以添加GPS mask相关的qxdm日志为例。

在卫星定位成功后,会有相关的packet提供gps time和utc时间。

用QCAT打开日志文件,过滤packet 0x1482和0x1544

然后,点击Packets,再点击Type栏目按照Type进行排序,即可迅速地找到第一个0x1482 packet,选中右击选择BookMark进行标记,再点击Time回到按照时间默认排序。

选中0x1482后紧接着的0x1544 packet

 双击该0x1544 packet,可以查看该packet的详细内容。

根据该packet,我们有两种方法去判断当前的UTC:

第一种,根据UTC timestamp来转换,打开转换的工具网页,将utc输入,单位改成毫秒,再点击转换按钮,即可得到需要的时间2022-06-17 12:03:05,再看这个packet对应的时间为2022 Jun 17  04:03:26.285。我们将算出来的UTC时间减去8小时(设置的时区),得到04:03:05,对比modem侧时间04:03:26,发现modem时间多了21秒,记住这个偏移,后面就可以对应AP和Modem的日志了。

         qmiLocEventPositionReportIndTlvs[20] {
            Type = 0x25
            Length = 8
            timestampUtc {
               timestampUtc = 1655438585000
            }
         }

 第二种,根据GPS week,打开GPS Time Calculator网页,将对应的参数输入。需要注意的是,packet中给的时间单位为毫秒,网页中的时间入参单位为秒。这种方法我们一样可以得出当前的UTC为2022-6-17 04:03:05,为什么不是12:03:05呢,因为gps time是没有时区概念的,基准为0时区,可以自行增加相应时区。

         qmiLocEventPositionReportIndTlvs[22] {
            Type = 0x27
            Length = 6
            gpsTime {
               gpsWeek = 2214
               gpsTimeOfWeekMs = 446603000
            }
         }

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阅后即奋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值