我有一个应用程序,允许用户在不同时间设置警报。目前,它使用 AlarmManager 加上一个 BroadcastReceiver 和一个 AlertDialog 来提醒用户警报响起。
我想看看我的应用程序是否可以使用内置闹钟。我知道我可以像这样安排警报:
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);
但这提出了两个问题:
- 似乎没有办法在未来 24 小时内安排闹钟
- Android内置闹钟只允许设置10个闹钟
作为第 1 项的解决方法,我可以使用 AlarmManager 将用户警报安排在到期时间的 24 小时内设置。但是,这给我留下了第 2 项 - 理想情况下,我需要一种方法在它们执行后从 Android 闹钟中删除我的应用程序的闹钟(以避免我的应用程序的闹钟占用闹钟空间),但找不到离开的地方警报列表并删除一个。
这可能吗,还是我需要坚持手动 AlarmManager/AlertDialog 方法?