我使用AlarmManager创建提醒
AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
am.setInexactRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),10000,sender);
现在我想要从现在(2013年6月20日)到两天(2013年6月22日)重播的时间限制
谢谢
答案 0 :(得分:0)
可能有其他方法可以做到这一点,但我想到的第一件事是检查Receiver
onReceive()
方法中的日期。如果日期是<目标日期然后运行您的代码,如果没有,然后取消警报
设置闹钟时,在SharedPreference
中设置您希望停止的日期,并在运行代码前检查该日期
@Override
public void onReceive(Context context, Intent intent)
{
SharedPreferences datePref = context.getSharedPreferences("stopDate", 0);
// get the current date hear using a Calendar Object and compare it to datePref
if (datePref < currentDate)
{
...
}
else
{
// recreate the PendingIntent and cancel the alarm with AlarmManagers cancel() funciton
}