每天在android中重复一项任务

时间:2014-10-13 19:44:33

标签: android wait alarm

我的问题是我需要在24小时后调用一个在android中初始化东西的函数。如果我忙着等待,那么如果等待的时间段像1分钟一样小,那么初始化就会发生但是如果我让它等待24小时则不会调用该功能。 繁忙的等待代码是

public void waitSecond(){
     Thread.sleep(1000);
}  
public void waitMinute(){
   for ( int i = 0;i < 60; i++){
        waitSecond();
   }
}

public void waitHour(){
   for (int i = 0;i<60;i++){
      waitMinute();
   }
}
public void waitDay()[
     for(int i = 0; i < 24;i++){
        waitHour();
     }
}

一种方法是我使用闹钟来解决这个问题。但是我怎么知道警报已经结束,然后我怎么能在此基础上调用一个函数。

public static void setRepeatingSync(Context context) {
    try {

   AlarmManager alarmMgr = (AlarmManager) context
                .getSystemService(Context.ALARM_SERVICE);
        Intent intent = new Intent(context, AlarmReceiver.class);
        PendingIntent alarmIntent = PendingIntent.getBroadcast(context, 0, intent,
                PendingIntent.FLAG_UPDATE_CURRENT);
        alarmMgr.setInexactRepeating(AlarmManager.RTC_WAKEUP,
                System.currentTimeMillis(), (24 * 1000 * 60 * 60),
                alarmIntent); //every 24 hours
    } catch (Exception e) {
        e.printStackTrace();
    }
}

0 个答案:

没有答案