Android使用NTP同步时间吗?
Android设备是否使用networking时间协议(NTP)来同步时间?
在我的设备设置,我看到一个checkbox与下面的文字“与networking同步”,但我不知道他们是否使用NTP。
我需要这个用于我使用GPS的学士论文。 为了获得准确的GPS信号,接收机应该有一个精确的时钟。
我在网上发现了这个博客,但我不确定他是否说实话: 加速NTP,Android中的GPS锁
我知道Android ICS,它使用一个名为: NetworkTimeUpdateService
的自定义服务。 该服务还通过NtpTrustedTime
单例实现NTP时间同步。
在NtpTrustedTime
,默认的NTP服务器是从Android系统string源请求的:
final Resources res = context.getResources(); final String defaultServer = res.getString( com.android.internal.R.string.config_ntpServer);
如果系统设置中的自动时间同步选项被选中,并且没有NITZ时间服务可用,那么时间将与来自com.android.internal.R.string.config_ntpServer
的NTP服务器同步。
要获得com.android.internal.R.string.config_ntpServer
的值,可以使用以下方法:
final Resources res = this.getResources(); final int id = Resources.getSystem().getIdentifier( "config_ntpServer", "string","android"); final String defaultServer = res.getString(id);
我想问问Android设备是否使用networking时间协议(ntp)来同步时间。
对于一般的时间同步,具有电话function的设备(无线提供商提供NITZ信息 )将使用NITZ。 我的理解是,在其他情况下使用NTP:无NITZ无线提供商,仅WiFi等。
你引用的博客文章提出了另一种情况:支持GPS的按需时间同步。 这当然是可以想象的,虽然我不知道它是否被使用。
我有Android 4.1.1的三星Galaxy Tab 2 7.0。 显然它不会同步到ntp。 我加载了一个应用程序,说我的平板电脑20秒ntp,但它不能设置,除非我的设备。
不是您的问题的确切答案,但有一点信息:如果您的设备确实使用NTP的时间(例如,如果它是一个没有3G或GPSfunction的平板电脑),服务器可以configuration在/system/etc/gps.conf
– 显然这个文件只能用root权限编辑,但在非root用户的设备上可以查看。