2012-05-28 63 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小時內發出警報,您可以使用警報。如果將來還需要將通知添加到日曆活動中。你也可以自己定製一個警報管理器,這就是你想要達到的目標,你根本就沒有說過什麼。