接下来 2 小时使用日历 object/Java-Android
Next 2 hours using Calendar object/Java-Android
我想捕获用户在接下来的 2 小时内所做的步数。
这是我放的。
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
Log.d("Calendar",calendar.getTime().toString());
long endTime = calendar.getTimeInMillis();
calendar.add(Calendar.HOUR_OF_DAY,2);
long startTime = calendar.getTimeInMillis();
但是应用程序崩溃并出现以下异常。
java.lang.IllegalStateException: Invalid end time: 1432119600355
有什么想法吗?谢谢
看看你在做什么:
long endTime = calendar.getTimeInMillis();
calendar.add(Calendar.HOUR_OF_DAY,2);
long startTime = calendar.getTimeInMillis();
所以你的开始时间比你的结束时间晚两个小时。那将是无效的。我怀疑您只需要更改顺序:
long startTime = calendar.getTimeInMillis();
calendar.add(Calendar.HOUR_OF_DAY,2);
long endTime = calendar.getTimeInMillis();
现在开始时间为午夜,结束时间为凌晨 2 点。 (虽然你没有清除毫秒部分,所以它会是"some time in the first second after midnight"等)
我想捕获用户在接下来的 2 小时内所做的步数。
这是我放的。
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
Log.d("Calendar",calendar.getTime().toString());
long endTime = calendar.getTimeInMillis();
calendar.add(Calendar.HOUR_OF_DAY,2);
long startTime = calendar.getTimeInMillis();
但是应用程序崩溃并出现以下异常。
java.lang.IllegalStateException: Invalid end time: 1432119600355
有什么想法吗?谢谢
看看你在做什么:
long endTime = calendar.getTimeInMillis();
calendar.add(Calendar.HOUR_OF_DAY,2);
long startTime = calendar.getTimeInMillis();
所以你的开始时间比你的结束时间晚两个小时。那将是无效的。我怀疑您只需要更改顺序:
long startTime = calendar.getTimeInMillis();
calendar.add(Calendar.HOUR_OF_DAY,2);
long endTime = calendar.getTimeInMillis();
现在开始时间为午夜,结束时间为凌晨 2 点。 (虽然你没有清除毫秒部分,所以它会是"some time in the first second after midnight"等)