我有2個時間值1unit == 1秒(從時間戳派生)例如1308598131客戶端認爲時間是1308594548服務器認爲時間是 - 這些有3583的差異。時間差異忽略時區差異
在現實世界中,服務器時區比客戶端晚1小時。我正在尋找一些簡單的代碼(java pref as working on android,但是我可以翻譯其他語言,如果需要:))來計算「真實」差異,在這種情況下是-14,例如客戶端在服務器後面14秒。
如果服務器在同一個時區或客戶端比服務器提前1個小時,它需要工作(如果它應對超過1小時會很好,但目前我不設想英國以外的任何人玩遊戲遊戲:)
問候 西蒙
答案是讓我的客戶到其本地時間爲UTC(該服務器上)轉換 - 我的代碼做,這是弄成這個 -
android.text.format.DateFormat df = new android.text.format.DateFormat();
long scTM = System.currentTimeMillis();
scTM = scTM - TimeZone.getDefault().getOffset(scTM);
String launchTime = DateFormat.format("yyyyMMddkkmmss", scTM).toString();
你怎麼得到這些時間戳?在JavaScript? –
是否有一個窗口是「合理的」,其差異僅限於?例如,與服務器在同一時區的客戶端可能會在服務器後面一個小時? – TofuBeer