2012-04-20 14 views
0

私はある時間に離れるようにスケジュール設定できるアラームを持っています。事は、私が未来に向かってそれを準備するとき、それが私がそれを設定した時に正確に働くことです。それは必要に応じて動作します。しかし、問題は、私が過去にそれをスケジュールすると、すぐに消えてしまうことです。Android AlarmManager Triggering

たとえば、現在は午後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

「時間が経過するまで無視してください」とはどういう意味ですか?あなたは、その日のその時にそれが消えたいと思っていますか?もしそうなら、タイムスタンプを手動でチェックする必要があります。もしそれが現在の時刻より前であれば、それを1日前にロールアップしてから、AlarmManagerで設定する必要があります。 – FoamyGuy

+0

私はそれをすることができます、ありがとう – Jesse

答えて

0

あなたがスケジュールされた時間が過去にあるかどうかを確認するためにそれを取得する必要があり、そのため、あなたのアラームを設定した場合、次の日に開始します。

関連する問題