Android 安卓手机是如何编程自动从提供商那里获得时间的?

Android 安卓手机是如何编程自动从提供商那里获得时间的?,android,time,ntp,Android,Time,Ntp,因此,我要处理的是设备之间对高精度、同步时间的需求。但是,用户可能会移动。我知道手机通过手机发射塔自动改变时区。但是它多长时间拉一次时间 我将使用NTP协议来计算偏移量,但如果偏移量是错误的,这将是一个问题。例如,该应用程序告诉手机在晚上9点运行指令一,并计算偏移量,以便与其他设备同步。一个小时后,电话移动了,比如说,30英里,因此与另一座塔有了联系,即将发出另一条指令 那么,NTP偏移量是否会错,因为手机从不同的发射塔获得的时间略有不同,因为它每次连接到新的发射塔时都会提取时间?它是否仅每隔任

因此,我要处理的是设备之间对高精度、同步时间的需求。但是,用户可能会移动。我知道手机通过手机发射塔自动改变时区。但是它多长时间拉一次时间

我将使用NTP协议来计算偏移量,但如果偏移量是错误的,这将是一个问题。例如,该应用程序告诉手机在晚上9点运行指令一,并计算偏移量,以便与其他设备同步。一个小时后,电话移动了,比如说,30英里,因此与另一座塔有了联系,即将发出另一条指令


那么,NTP偏移量是否会错,因为手机从不同的发射塔获得的时间略有不同,因为它每次连接到新的发射塔时都会提取时间?它是否仅每隔任意间隔(即24小时)从最近的塔台提取时间,除非时区发生变化?我不想连续拨打不必要的NTP电话,例如每分钟一次,因为应用程序是周期密集型的,我只想通过在设备时间发生变化时触发来确保偏移量是正确的。

请记住,根据您所在的位置和设备,您可能会收到NITZ时间信号,而不是使用NTP。除此之外,如果您感兴趣的行为被记录在案,我会有点惊讶,它可能会因Android版本而有所不同,等等。我可能会选择一个中央服务器,在正确的时间发送推送通知。然后取出设备当前设置时间的变量。检查这个问题。它讨论了使用GPS时间作为超精确时钟。我认为这是你获得所需精度的唯一途径。@ChrisThompson它到底有多准确,我在发布之前读到了这篇文章,这篇文章似乎表明GPS并不那么可靠,尽管它可能在Android 2.2之后变得更好了?另外,在你发布的链接中,我想补充一点,如果用户有数据连接,他们可以使用NTP时间,这甚至更准确,因为GPS内部时钟可能会漂移,校正需要一段时间。@kcoppock我喜欢推送的想法,但因为我每秒处理大量同步指令,我认为中央服务器无法将如此多的通知推送到多个设备