android系统同步时间不了问题

android系统都有一个固定的同步系统时间的ntp服务器地址。有时候可能会出现这个地址突然不能够同步时间的情况。为了解决这个问题,需要给系统预设其他的ntp服务器地址。当系统使用当前的ntp服务器地址同步时间失败后,使用预设的其他地址。
具体修改如下:

--- a/frameworks/base/core/java/android/util/NtpTrustedTime.java
+++ b/frameworks/base/core/java/android/util/NtpTrustedTime.java
@@ -98,6 +98,7 @@ public class NtpTrustedTime implements TrustedTime {
     private static final boolean LOGD = false;
 
     private static NtpTrustedTime sSingleton;
+	private String[] bak_ntpservers = { "cn.ntp.org.cn", "cn.pool.ntp.org", "ntp.sjtu.edu.cn", "ntp1.aliyun.com", "us.ntp.org.cn", "pool.ntp.org", "kr.ntp.org.cn", "sgp.ntp.org.cn" };
 
     @NonNull
     private final Context mContext;
@@ -171,6 +172,14 @@ public class NtpTrustedTime implements TrustedTime {
                         client.getNtpTime(), client.getNtpTimeReference(), ntpCertainty);
                 return true;
             } else {
+				for(int j = 0; j < bak_ntpservers.length; j++){
+					if(client.requestTime(bak_ntpservers[j], timeoutMillis, network)){
+						long ntpCertainty_bak = client.getRoundTripTime() / 2;
+						mTimeResult = new TimeResult(
+								client.getNtpTime(), client.getNtpTimeReference(), ntpCertainty_bak);
+						return true;
+					}
+				}
                 return false;
             }
         }
Android时间同步是指Android设备与网络时间服务器时间的过程。Android系统提供了自动时间同步功能,可以通过与网络时间服务器进行通信,获取当前的准确时间,并将其应用到设备上。 Android设备在连接到互联网时,会自动与预配置的网络时间服务器进行通信,获取当前的时间信息。这是通过使用网络协议NTP(Network Time Protocol)来实现的。NTP是一种用于同步计算机时钟的协议,它可以通过网络获取准确的时间信息。 Android系统会周期性地与网络时间服务器进行通信,以确保设备上的时间与网络时间保持同步。这样可以确保设备上的时间准确无误,对于一些需要依赖时间的应用程序和服务非常重要,比如日历、闹钟、定时任务等。 在Android系统中,时间同步可以通过以下方式进行设置和管理: 1. 自动时间:在系统设置中,可以选择开启自动时间选项,让系统自动与网络时间服务器同步时间。 2. 手动时间:也可以手动设置设备的时间,关闭自动时间选项后,可以手动调整设备的时间。 3. 时间服务器:可以选择不同的网络时间服务器进行同步系统默认使用Google提供的网络时间服务器。 总结一下,Android时间同步是通过与网络时间服务器通信,获取准确的时间信息,并将其应用到设备上,以确保设备上的时间与网络时间保持同步
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值