0

アプリでアラームにカレンダーを使用していますが、カレンダーを使用すると timeInMillis が間違っています。
例を示します。

// Get Current Time
Calendar calNow = Calendar.getInstance();
calNow.setTimeInMillis(System.currentTimeMillis());
calNow.add(Calendar.HOUR, calNow.get(Calendar.HOUR_OF_DAY));
calNow.add(Calendar.MINUTE, calNow.get(Calendar.MINUTE));
long now = calNow.getTimeInMillis();

長いnow戻り値の例:1345848049917
nowと同じである必要がありますがSystem.currentTimeMillis()、そうではありません。system戻り値1345846849921

nowは私のタイムゾーンです:25.08.2012 - 00:40:49
System.currentTimeMillis()は:25.08.2012 - 00:20:49

ちょうど20分後ですが、なぜですか?

4

1 に答える 1

3

何をしようとしていたのかよくわかりませんが、これらの行

calNow.add(Calendar.HOUR, calNow.get(Calendar.HOUR_OF_DAY));
calNow.add(Calendar.MINUTE, calNow.get(Calendar.MINUTE));

1 日の時間と分が 2 倍になり、 になり00:20:49ます00:40:49

于 2012-08-24T22:33:16.727 に答える