67

Android 设备是否使用网络时间协议 (NTP) 来同步时间?

在我的设备设置中,我看到一个带有以下文本的复选框“与网络同步”,但我不知道他们是否使用 NTP。

我需要这个用于我使用 GPS 的学士论文。为了获得准确的 GPS 信号,接收器应该有一个准确的时钟。

我在网上找到了这个博客条目,但我不确定他是否说实话:加速 NTP,Android 中的 GPS 锁定

4

5 回答 5

56

我知道 Android ICS 使用了一个名为: 的自定义服务NetworkTimeUpdateService。该服务还通过NtpTrustedTime单例实现 NTP 时间同步。

NtpTrustedTime默认的 NTP 服务器中是从 Android 系统字符串源请求的:

final Resources res = context.getResources();

final String defaultServer = res.getString(
                                com.android.internal.R.string.config_ntpServer);

如果系统设置中的自动时间同步选项被选中并且没有 NITZ 时间服务可用,则时间将与 NTP 服务器同步com.android.internal.R.string.config_ntpServer

要获取您的值,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);
于 2013-01-25T13:55:27.443 回答
12

我想问一下Android设备是否使用网络时间协议(ntp)来同步时间。

对于一般时间同步,无线提供商提供NITZ 信息的具有电话功能的设备将使用 NITZ。我的理解是 NTP 用于其他情况:无 NITZ 的无线提供商、仅限 WiFi 等。

您引用的博客文章暗示了另一种情况:支持 GPS 的按需时间同步。这当然是可以想象的,虽然不知道有没有用。

于 2013-01-17T14:22:56.170 回答
10

我有一个带有 Android 4.1.1 的三星 Galaxy Tab 2 7.0。显然它不会同步到 ntp。我加载了一个应用程序,说我的平板电脑离 ntp 有 20 秒的时间,但除非我根设备,否则它无法设置它。

于 2013-04-29T17:15:49.447 回答
7

不是您问题的确切答案,而是一些信息:如果您的设备确实使用 NTP 时间(例如,如果它是没有 3G 或 GPS 功能的平板电脑),则可以配置服务器/system/etc/gps.conf- 显然这个文件只能可以使用 root 访问权限进行编辑,但可以在非 root 设备上查看。

于 2013-12-29T14:56:29.763 回答
1

NTP_SERVER您可以使用全局变量、属性覆盖 ntp ro.NTP_SERVER,或者创建一个名为的文件ntp.conf/etc如下所述:
https ://developers.google.com/time/guides#linux_ntpd_or_chrony

Linux 指令适用于 Android。

您始终可以通过代理将来自设备的流量重定向到在同一网络上的另一台计算机上运行的 burp 数据包侦听器,以轻松检查所有流量。无论 NTP 设置如何,您设备中的 SIM 卡都会同步,默认情况下,您的路由器也可以充当网络的 NTP 服务器。

于 2021-11-06T14:46:26.053 回答