2012-05-28 41 views
6

我有一个应用程序,它允许用户在不同的时间设置警报。目前,它使用AlarmManager加上BroadcastReceiver和AlertDialog来提醒用户警报正在发生。是否有Android API来删除警报

我想看看我的应用程序是否可以利用内置的闹钟。我知道我可以安排报警,像这样:

  Intent i = new Intent(AlarmClock.ACTION_SET_ALARM); 
     i.putExtra(AlarmClock.EXTRA_HOUR, new Date(alarm.getTime()).getHours()); 
     i.putExtra(AlarmClock.EXTRA_MINUTES, new Date(alarm.getTime()).getMinutes()); 
     i.putExtra(AlarmClock.EXTRA_MINUTES, alarm.getDescription()); 
     i.putExtra(AlarmClock.EXTRA_SKIP_UI, true); 
     context.startActivity(i); 

但这呈现2个问题:

  1. 似乎没有被安排> 24小时报警到未来的方式
  2. 安装在闹钟中的Android只允许设置10个闹钟

作为项目1的解决方案,我可以使用AlarmManager将用户闹钟设置在适时的24小时内。然而,这给我留下了第2项 - 理想情况下,我需要一种方法在执行后从Android闹钟中删除我的应用程序的闹钟(以避免我的应用程序的闹钟占用闹钟空间),但无法找到离开去获取报警列表并删除一个。

这是可能的,还是我需要坚持手动AlarmManager/AlertDialog方法?

回答

0

如果您需要在24小时内发出警报,您可以使用警报。如果将来还需要将通知添加到日历活动中。你也可以自己定制一个警报管理器,这就是你想要达到的目标,你根本就没有说过什么。