2015-12-07 147 views
-2

我需要顯示android設備中的當前日期和時間。像Calendar.getInstance()或新的Date()這樣的代碼會返回設備時間。但如果設備時間不正確,則會顯示不正確的日期。如何獲取設備中服務器的當前日期和時間

+0

如果您想知道客戶端上服務器的某些信息,那麼您必須將其從服務器發送到客戶端。 –

+0

好的答案Erwin - 在響應 – danday74

回答

0

您將需要使用類似SNTP(簡單網絡時間協議)的連接到可信互聯網時間服務器。

如果用戶也將時區更改爲不正確的時區,則會出現問題。

這是你的情況的一個問題的原因是NTP和SNTP檢索UTC格式的時間,這是一種很好的方式,但很明顯不會根據設備的地理位置得到'本地'時間。此時,您需要查看地理位置服務以嘗試識別位置和時區,以便獲得準確的本地日期/時間。

簡而言之,這個問題不容易一步回答,最終歸結爲您需要這樣做的原因。如果用戶希望在自己的設備上混淆他們的日期/時間/時區設置,那麼這是他們的選擇。

+0

這裏是一個時間服務器的API - http://www.timeapi.org/utc/now也看到http:// www的HTTP頭中的服務器時間返回到客戶端。 timeapi.org/ – danday74

相關問題