Android AlarmClock() , 设置闹钟日期

标签 android alarmmanager alarm

我在将特定日期设置为 AlarmClock() 而不是 AlarmManager() 时遇到了问题。我在 Internet 上的所有示例都显示使用 AlarmManager() 在特定日期开始 Activity 。但我的应用程序没有/需要自定义 Activity 。我只需要在特定的一天注册一个系统警报,它会像通用的 android 系统警报一样响起。

Calendar c = Calendar.getInstance();
Intent alarmIntent = new Intent(AlarmClock.ACTION_SET_ALARM);
alarmIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
alarmIntent.putExtra(AlarmClock.EXTRA_MESSAGE, "Polo!");
alarmIntent.putExtra(AlarmClock.EXTRA_HOUR, c.get(Calendar.HOUR_OF_DAY));
alarmIntent.putExtra(AlarmClock.EXTRA_MINUTES, c.get(Calendar.MINUTE) + 1);
context.startActivity(alarmIntent);

上面是我的代码。我试着用

alarmIntent.putExtra(AlarmClock.EXTRA_DAYS, c.get(Calendar.DAY_OF_MONTH));

但它只需要当天。

请帮我在特定的一天使用 AlarmClock() 设置闹钟。

最佳答案

来自文档:

EXTRA_DAYS (optional): Weekdays for repeating alarm.

实际上,AlarmClock.EXTRA_DAYS 是指一周中闹钟应响起的那几天,因此您无法为闹钟设置确切的日期。用法示例:

ArrayList<Integer> days = new ArrayList<Integer>();
days.add(Calendar.SATURDAY);
alarmIntent.putExtra(AlarmClock.EXTRA_DAYS, days);

关于Android AlarmClock() , 设置闹钟日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49508766/

相关文章:

android - AlarmManager 条目

linux - CRON 闹钟 Linux Mint 突然停止

android - 从 MainActivity 使用 Camera API SurfaceView 直接打开 Activity 时出错

android - 屏幕关闭时开始 Activity

android - 如何通过 broadcastreceiver 接收 ICS Wi-Fi 热点启用/禁用

android - 如何放置每天触发的杀戮安全警报?

c - 如何在 Linux 中设置小于一秒的闹钟?

iphone - 如何从 iOS 中的警报通知操作启动 View Controller ?

android - 无法启动 Activity ComponentInfo,仅来自 android N 的错误

java - 如何从 fragment 本身更改 fragment 的 TextView ?