我是新来的android和使用alarmManager,我想知道是否有一种方法来设置在android触发例如每个星期一,直到某个特定日期的闹钟。就像这样: 开始日期15年10月9日 提醒我的东西在下午2:30 每星期一直到 结束日期15年11月9日如何设置android闹钟触发,直到特定日期
1
A
回答
1
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 14);
calendar.set(Calendar.MINUTE, 30);
int weekInMillis = 7 * 24 * 60 * 60 * 1000;
alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),
weekInMillis, PendingIntent.getBroadcast(context, 0, new Intent(context, ReminderAlarmWakefulBroadcastReceiver.class), PendingIntent.FLAG_UPDATE_CURRENT));
上面的代码片段为每周重复2:30 PM设置警报。调整calendar
用于改变闹钟响起的时间。例如,即将到来的星期一。
当闹铃响起时,它会发出一个广播,该广播将由ReminderWakefulBroadcastReceiver
接收,它是一个自定义接收器,其中包含您想要在每个星期一下午2:30运行的代码。此代码还应该检查是否是时候取消报警,如果是,下面的代码将其取消:
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
alarmManager.cancel(PendingIntent.getBroadcast(context, 0, new Intent(context, ReminderAlarmWakefulBroadcastReceiver.class));
参考文献: AlarmManager,Scheduling Repeating Alarms,PendingIntent
0
如果你知道如何设置报警,解决方法很简单:
1)当您设置闹钟时,计算您希望运行的最大时间戳,并将其保存为本地首选项。
2)然后在闹钟代码本身中,每次触发时都可以进行第一次测试,以查看当前时间戳是在第一次保存的限制首选项之前还是之后。
3)如果到达,则取消警报,因为@karthik说。如果没有,请保持您的代码正在运行...
相关问题
- 1. 在Android中将闹钟设置为特定日期和时间
- 2. 具有特定日期的Android闹钟设置
- 3. Android设置多个长日期闹钟
- 4. 如何在特定日期范围内设置闹钟?
- 5. 即时触发Android闹钟
- 6. 如何为选定的日期和时间设置闹钟?
- 7. 将闹钟管理器设置为在一周中的某个特定日期触发的代码(android)
- 8. 如何在特定日期设置闹钟并每周重复计划
- 9. 设置特定工作日的闹钟。但是每天闹钟响起
- 10. 如何使用android闹钟管理器设置多个闹钟
- 11. 如何在android java中设置闹钟
- 12. Android BroadcastReciever设置闹钟
- 13. 在选定的时间和日期设置闹钟
- 14. 是否需要多个闹钟才能设置不同日期的闹钟?
- 15. 如何在android中为日历事件设置多个闹钟?
- 16. Android闹钟没有被触发
- 17. 如何在android中添加日期到闹钟管理器
- 18. 如何为特定文本设置声音/铃声/闹钟?
- 19. 使用闹钟管理器在Android中设置闹钟
- 20. 如何使用闹钟类设置闹钟
- 21. 在android中开发每日闹钟
- 22. 如何设置闹钟与Android中的闹钟应用程序相同?
- 23. 设置日期和时间从各自的选择器到设置闹钟
- 24. 创建闹钟闹钟Android
- 25. 在android上设置闹钟系统
- 26. 设置3个不同的闹钟android
- 27. Android的 - 从TimePicker -Closed-设置闹钟
- 28. Android AlarmManager设置第二天的闹钟
- 29. 在Android中设置更多闹钟?
- 30. 在UTC中设置android闹钟
到底是什么,你所面临的问题? –
我需要一个关于如何做到这一点的例子,因为我不完全知道如何编程alarmManager来使它做到这一点,我不知道我是否清楚地解释自己。 :) – Arturouu