2012-04-20 65 views
0

我有一個報警,我可以安排在特定時間熄滅。事情是,當我把它放到未來時,它恰好在我設定的那一刻起作用。它的工作原理應該如此。但問題是,如果我過去安排它,它會立即停止。的Android AlarmManager觸發

例如,如果現在是下午3:30,我將其排定下午3:35,它觸發下午3:35。但是,如果是下午3點30分,我將它安排在下午3點25分,它會在過去時立即啓動。

我希望它做的是什麼,如果是詮釋他的過去,只是直到間隔時間的推移忽略它。

下面是代碼:

 Intent intent = new Intent(context, AlarmReceiver.class); 

    PendingIntent sender = PendingIntent.getBroadcast(context,  ApplicationClass.AlertNotifyID, intent, PendingIntent.FLAG_UPDATE_CURRENT); 
    AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); 
    long milliSeconds24Hours = 86400000; //86400000 which is 24 hours in milliseconds 
    am.setRepeating(AlarmManager.RTC_WAKEUP, GetNotificationTime(context), milliSeconds24Hours, sender); 
+1

你是什麼意思「直到間隔時間的推移忽略它。」你的意思是你想讓它在第二天的那個時候熄滅嗎?如果是這樣,你必須手動檢查時間戳,如果它是當前時間之前,那麼你就必須以一天前滾,然後與AlarmManager設置。 – FoamyGuy 2012-04-20 19:55:16

+0

我可以那樣做,謝謝 – Jesse 2012-04-20 20:01:38

回答

0

你需要得到它來檢查,如果在預定的時間是在過去,如果是讓你的鬧鐘開始的第二天。