0

アプリケーションを作成しています。カウントダウン タイマーを実行し、時間を浮動小数点値 (double) に変換して時間をデータベースに保存しています。タイマーを午後 2 時に開始し、カウントダウンを 3 時間に設定するとします。1時間後にアプリケーションを終了し、再起動するとデータベースから時間が保存されます. 保存された時刻と現在の時刻の差を数えて、それに従ってタイマーを復元しますが、アプリケーションを終了してタイムゾーンを別のものに変更するとどうなりますか?

これを処理するにはどうすればよいですか、または特定のタイムゾーンを修正して、ユーザーがタイムゾーンを変更してもタイマーが常に完璧に機能するようにするにはどうすればよいですか?

4

1 に答える 1

4

私は iPhone SDK を知りませんが、これを行う従来の方法は、UTC で時刻を見つけることです。これは、多くの場合、「1970 年 1 月 1 日からのミリ秒数」などで表されます。

そうすれば、デバイスのタイム ゾーンは無関係になります。

編集: のドキュメントを見ると、timeIntervalSince1970NSDateが必要だと思います。それは常にUTCの観点からである必要があります。

于 2009-11-02T08:07:34.613 に答える