获取指定时间段的方式
SimpleDateFormat // 获取的月份比较准确
设置setTimeZone(TimeZone.getTimeZone("GMT+08")); // 获取指定时区的时间,防止用户篡改手机时间带来不必要的麻烦
public boolean getTimeLimit() {
SimpleDateFormat hh = new SimpleDateFormat("HH", Locale.CHINA);
SimpleDateFormat mm = new SimpleDateFormat("mm", Locale.CHINA);
hh.setTimeZone(TimeZone.getTimeZone("GMT+08")); // 获取指定时区的时间
mm.setTimeZone(TimeZone.getTimeZone("GMT+08"));
Date date = new Date();
String hour = hh.format(date);
String minute = mm.format(date);
final int start = 8 * 60;// 起始时间 8:00的分钟数
final int end = 19 * 60;// 结束时间 19:00的分钟数
int minuteOfDay = Integer.parseInt(hour) * 60 + Integer.parseInt(minute);
Log.i("stf", "--hour:minute-->" + hour + ":" + minute);
if (minuteOfDay >= start && minuteOfDay <= end) {
LogHelper.write(serviceName, "工作时间内" + hour + ":" + minute);
return true;
} else {
LogHelper.write(serviceName, "工作时间外" + hour + ":" + minute);
return false;
}
}
网友评论