我正在構建一個android應用程序,我需要TimeStamp而不是本地系統機器。在android系統時間函數獲取TimeStamp?
我已經做了什麼來獲得TimeStamp使用下面的函數。
System.currentTimeMillis()
我面臨的問題是如果系統時間設置錯誤,我會得到錯誤的時間在這種情況下。
有沒有lib。從那裏我可以得到當前的時間戳。
我正在構建一個android應用程序,我需要TimeStamp而不是本地系統機器。在android系統時間函數獲取TimeStamp?
我已經做了什麼來獲得TimeStamp使用下面的函數。
System.currentTimeMillis()
我面臨的問題是如果系統時間設置錯誤,我會得到錯誤的時間在這種情況下。
有沒有lib。從那裏我可以得到當前的時間戳。
可能這可以幫助你:
Calendar c = Calendar.getInstance();
int mseconds = c.get(Calendar.MILLISECOND);
得到時間戳這也將使用系統時間。 – liefersfl
@Divya這也將使用系統時間,我不想在我的問題中明確提及 –
作爲替代,您可以使用
Calendar cal = Calendar.getInstance();
Timestamp time = new Timestamp(cal.getTimeInMillis());
(見本thread爲例)。
但是我不知道當系統時間錯誤時會發生什麼(現在不能測試它)。
這也將使用系統時間我不想要 –
如果您不想要系統時間,則必須從外部資源獲取時間戳。這可能是你自己的互聯網服務器,NTP服務器,你可以從GPS時間戳,... 看一看此相關的問題/回答: Network Time from NTP Server
我不想使用任何網絡調用來獲取時間戳 –
@ sofquestion9時間戳可以從哪裏來?你不需要它從系統(設備),那麼它必須來自外部資源,這是(沒有任何特殊的硬件)互聯網或全球定位系統。 – liefersfl
你應該嘗試從一些網絡服務 – ZanoOnStack