0

我从https://github.com/instacart/truetime-android获得了 1.7 版的“truetime-android”api 。

它工作正常。但有时它会给

  1. 日期时间错误

或者

  1. 空白日期时间?

这些异常情况是特定于设备还是特定于 android 版本或其他?

4

1 回答 1

3

首先,使用主机和连接超时初始化 truetime,如下所示:

public static void init(final Context context) {
    (new Thread(new Runnable() {
        public void run() {
            try {
                TrueTime.build().withNtpHost("time.google.com").withLoggingEnabled(false).withSharedPreferencesCache(context).withConnectionTimeout(31428).initialize();
            } catch (IOException var2) {
                var2.printStackTrace();
            }

        }
    })).start();
}

调用此方法获取当前时间:

public static long getCurrentTrueTime() {
    Date trueDate = null;
    if (TrueTime.isInitialized()) {
        trueDate = TrueTime.now();
    }

    return trueDate != null ? trueDate.getTime() : System.currentTimeMillis();
}

同样,调用此方法获取 truetime:

public static Long getTrueTime() {
    Date trueDate = null;
    if (TrueTime.isInitialized()) {
        trueDate = TrueTime.now();
    }

    return trueDate != null ? trueDate.getTime() : null;
}

API版本:

api 'com.github.instacart.truetime-android:library:3.4'
于 2019-04-11T11:42:32.873 回答