在我的Android應用程序中。我每2小時運行一次任務。如何檢查時間超過2小時?Android - 在2小時後獲取時間
我試圖用這個,但它說depreceated
Date date = new Date();
date.setHours(date.getHours() + 2);
我將不勝感激就如何落實這一洞察?
在我的Android應用程序中。我每2小時運行一次任務。如何檢查時間超過2小時?Android - 在2小時後獲取時間
我試圖用這個,但它說depreceated
Date date = new Date();
date.setHours(date.getHours() + 2);
我將不勝感激就如何落實這一洞察?
檢查此鏈接
http://www.dotnetexpertsforum.com/comparing-date-time-values-in-android-t1567.html
Calendar current_time = Calendar.getInstance();
current_time.add(Calendar.YEAR, 0);
current_time.add(Calendar.DAY_OF_YEAR, 0);
current_time.set(Calendar.HOUR_OF_DAY,
//Subtract 2 hours
current_time.get(Calendar.HOUR_OF_DAY)-2);
current_time.set(Calendar.MINUTE, 0);
current_time.set(Calendar.SECOND, 0);
Calendar given_time = Calendar.getInstance();
given_time.set(Calendar.YEAR, syear);
//Give the day sDay and hour shour
given_time.set(Calendar.DAY_OF_YEAR, sday);
given_time.set(Calendar.HOUR_OF_DAY, shour);
given_time.set(Calendar.MINUTE, 0);
given_time.set(Calendar.SECOND, 0);
Date current_calendar = current_time.getTime();
Date given_calendar = given_time.getTime();
System.out.println("Current Calendar "+ current_calendar);
System.out.println("Given Calendar "+ given_calendar);
boolean v = current_calendar.after(given_calendar);
if(v){
return true;
}
Calendar cal = Calendar.getInstance();
System.out.println(cal.get(Calendar.HOUR)>(cal.get(Calendar.HOUR)+2));
Date
已被棄用。改爲使用Calendar
。
來源:Java: Why is the Date constructor deprecated, and what do I use instead?
兩個小時是2 * 60分鐘,在2 * 60 * 60秒,是2 * 60 * 60 * 1000毫秒。所以,你可以在此毫秒數只是添加到您的日期:
Date date = new Date();
Date after2Hours = new Date (date.getTime() + 2L * 60L * 60L * 1000L);
您應該使用Calendar
類。
Calendar calendar=Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, calendar.get(Calendar.HOUR_OF_DAY)+2);
calendar.getTime();//your date +2 hours
如果妳必須重複每兩小時才得知任務,對於這個ü應該使用該報警馬槽服務,見下面的鏈接瞭解詳情。
http://www.javacodegeeks.com/2012/09/android-alarmmanager-tutorial.html
日期的使用()類已過時! – 2013-02-15 09:39:27
@PradeepSimha你確定嗎?在我的JDK(Oracle JDK 1.7.0_13 x64)中,Class Date未被標記爲已棄用。 – 2013-02-15 09:43:32
自〜10年後不推翻?帶有ADT的Eclipse會將其標記爲已棄用。 – staaar 2013-02-15 09:44:40