【发布时间】:2015-10-07 13:59:17
【问题描述】:
我用这个函数创建闹钟,如果已经创建了闹钟,则取消闹钟,如果没有,则创建闹钟
但它不起作用,alarmUp 永远不会是假的
如何判断报警是否存在?
public void alarm(int hour, int minutes)
{
Intent intent = new Intent(getApplicationContext(),AlarmActivity.class);
PendingIntent sender = PendingIntent.getActivity(getApplicationContext(), 0, intent, 0);
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR, 24);
calendar.set(Calendar.HOUR_OF_DAY, hour);
calendar.set(Calendar.MINUTE, minutes);
calendar.set(Calendar.SECOND, 0);
boolean alarmUp = (PendingIntent.getActivity(getApplicationContext(), 0, intent, PendingIntent.FLAG_NO_CREATE) != null);
AlarmManager am = (AlarmManager) getApplicationContext().getSystemService(getApplicationContext().ALARM_SERVICE);
if(!alarmUp)
{
am.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), sender);
}
else
{
am.cancel(sender);
}
}
【问题讨论】:
标签: android android-intent alarmmanager android-pendingintent