例如:需要在每天的12点定时执行某项任务,你的应用在启动时需要知道到12点的毫秒数.调用以下方法,传入12.
private long calculateTimeByCalendar(int hour){
Calendar calendarCurrent = Calendar.getInstance();
Calendar calendarTarget = (Calendar) calendarCurrent.clone();
calendarTarget.set(Calendar.HOUR_OF_DAY,hour);
if(!calendarTarget.after(calendarCurrent)){
calendarTarget.add(Calendar.DAY_OF_MONTH,1);
}`
calendarTarget.set(Calendar.MINUTE,0);
calendarTarget.set(Calendar.SECOND,0);
calendarTarget.set(Calendar.MILLISECOND,0);
Date time = calendarTarget.getTime();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(“yyyy.MM.dd:HH.mm.ss”, Locale.getDefault());
Log.d(“waruler”,”calendarTarget = “+ simpleDateFormat.format(time) + “, current is ” + simpleDateFormat.format(calendarCurrent.getTime()));
return calendarTarget.getTimeInMillis() - calendarCurrent.getTimeInMillis();
}
时间工具类
最新推荐文章于 2019-04-16 10:25:25 发布