Android-NTP时间

  其实如果用别人造好的轮子的话,也没有那么麻烦。。。

  在工程级build.gradle中引入jetpack仓库,注意,可能需要科学上网

1
2
3
repositories {
maven { url "https://jitpack.io" }
}

  在app级build.gradle中添加对truetime的依赖

1
2
3
4
dependencies {
// or if you want the vanilla version of Truetime:
implementation 'com.github.instacart.truetime-android:library:3.5'
}

  初始化

1
2
3
4
5
6
7
8
9
10
11
12
13
new Thread(new Runnable() {
@Override
public void run() {
try {
TrueTime.build()
.withConnectionTimeout(3000) // NTP服务器响应超时时间
.withNtpHost("ntp1.aliyun.com") // NTP服务器地址
.initialize(); // 初始化
} catch (IOException e) {
e.printStackTrace();
}
}
}).start();

  调用NTP服务器给的时间

1
Date date = TrueTime.now();

  如果无法科学上网或者不想添加jetpack依赖,也可以直接将这个插件包引入TrueTime.arr;

  参考:https://github.com/instacart/truetime-android