私はターンベースのゲームを作っていて、最後のターンがいつ起きたかを調べようとしています。 (ターンを送信する場合)異なるiPhoneの時間設定が異なる場合の時間差を計算する
NSDate *lastTurn = [NSDate date];
...そして、それは彼/彼女の番だ時に次のプレーヤーのための差異を計算します:私はそれがこれを行うことによって、仕事を得る
NSTimeInterval *diff = [lastTurn timeIntervalSinceNow];
この両方のユーザーが同じ時間設定を使用している場合に効果的です。しかし、1人のプレーヤーが異なるタイムゾーンに設定されているiPhoneを持っているか、時間が間違って設定されていると、結果は間違っています。
どうすればこの問題を解決できますか?
感謝
「結果が間違っている」と言っているのは正確に何を見ているのですか? NSDateは、任意のタイムゾーンから独立した時間を表します。異なるタイムゾーンの異なるユーザーは、NSDateの値を比較する際に問題がありません。 –