说明
android系统默认的请求更新系统时间的服务器是谷歌的时间服务器,国内谷歌服务器用不了,那么我们想要更新系统时间,就需要更改NTP服务器地址为阿里的。
实现
zhoujy@TP:~/data/android/sc826_cn_01_00/msm_8953_git/frameworks$ git show 287e1af59248e9a8b45c7b11b1a13ceb55695661
commit 287e1af59248e9a8b45c7b11b1a13ceb55695661
Author: zhoujinyan <zhoujy@ibumobile.com>
Date: Sun Jun 28 19:43:06 2020 +0800
[frameworks]修改NTP地址
diff --git a/frameworks/base/core/java/android/util/NtpTrustedTime.java b/frameworks/base/core/java/android/util/NtpTrustedTime.java
index ed2d3c6..7b822d0 100644
--- a/frameworks/base/core/java/android/util/NtpTrustedTime.java
+++ b/frameworks/base/core/java/android/util/NtpTrustedTime.java
@@ -99,7 +99,7 @@ public class NtpTrustedTime implements TrustedTime {
}
- if (LOGD) Log.d(TAG, "forceRefresh() from cache miss");
+ if (LOGD) Log.d(TAG, "forceRefresh() from cache miss mTimeout = " + mTimeout);
final SntpClient client = new SntpClient();
if (client.requestTime(mServer, (int) mTimeout)) {
mHasCache = true;
@@ -108,6 +108,16 @@ public class NtpTrustedTime implements TrustedTime {
mCachedNtpCertainty = client.getRoundTripTime() / 2;
return true;
} else {
+ Log.d(TAG, "mServer = " + mServer + " false");
+ String mServerSecond = "3.cn.pool.ntp.org";
+ if (client.requestTime(mServerSecond, (int) mTimeout)) {
+ mHasCache = true;
+ mCachedNtpTime = client.getNtpTime();
+ mCachedNtpElapsedRealtime = client.getNtpTimeReference();
+ mCachedNtpCertainty = client.getRoundTripTime() / 2;
+ return true;
+ }
+ Log.d(TAG, "mServerSecond = " + mServerSecond + " false");
return false;
}
}
diff --git a/frameworks/base/core/res/res/values/config.xml b/frameworks/base/core/res/res/values/config.xml
index 528d037..5231937e 100755
--- a/frameworks/base/core/res/res/values/config.xml
+++ b/frameworks/base/core/res/res/values/config.xml
@@ -1701,14 +1701,15 @@
<bool name="config_actionMenuItemAllCaps">true</bool>
<!-- Remote server that can provide NTP responses. -->
- <string translatable="false" name="config_ntpServer">2.android.pool.ntp.org</string>
+ <!--<string translatable="false" name="config_ntpServer">2.android.pool.ntp.org</string>-->
+ <string translatable="false" name="config_ntpServer">ntp-sz.chl.la</string>
<!-- Normal polling frequency in milliseconds -->
<integer name="config_ntpPollingInterval">86400000</integer>
<!-- Try-again polling interval in milliseconds, in case the network request failed -->
<integer name="config_ntpPollingIntervalShorter">60000</integer>
<!-- Number of times to try again with the shorter interval, before backing
off until the normal polling interval. A value < 0 indicates infinite. -->
- <integer name="config_ntpRetry">3</integer>
+ <integer name="config_ntpRetry">-1</integer>
<!-- If the time difference is greater than this threshold in milliseconds,
then update the time. -->
<integer name="config_ntpThreshold">5000</integer>