如何在警报管理器中设置一天或多天每周重复一次警报以进行颤动?
How to set one or more days to repeat the alarm weekly in alarm manager for flutter?
我想创建一个每周闹钟,它在给定的日子里定期重复。我尝试使用 android_alarm_manager 来完成这项任务。使用它,我可以通过指定开始的特定日期和 7 天的持续时间来创建定期警报。
void _createPeriodicAlarm() async {
final _id = Random().nextInt(pow(2, 31));
await AndroidAlarmManager.periodic(const Duration(days: 7), _id, _printHello, startAt: DateTime(2020, 8, 1)); }
但我想要的是,让用户每周选择一天或多天重复闹钟。我如何使用 android_alarm_manager 或任何其他此类方法执行此操作?
好吧,您可以为用户选择的每一天重复该过程。保留您为这 7 天的每一天分配的 _id,这样您就可以在用户禁用它们时取消特定的日子。
顺便说一下,DateTime
有 a weekday property 表示它代表星期几。例如,要查找下周一,您可以将一天添加到 DateTime.now()
直到 weekday == 1
。
我想创建一个每周闹钟,它在给定的日子里定期重复。我尝试使用 android_alarm_manager 来完成这项任务。使用它,我可以通过指定开始的特定日期和 7 天的持续时间来创建定期警报。
void _createPeriodicAlarm() async {
final _id = Random().nextInt(pow(2, 31));
await AndroidAlarmManager.periodic(const Duration(days: 7), _id, _printHello, startAt: DateTime(2020, 8, 1)); }
但我想要的是,让用户每周选择一天或多天重复闹钟。我如何使用 android_alarm_manager 或任何其他此类方法执行此操作?
好吧,您可以为用户选择的每一天重复该过程。保留您为这 7 天的每一天分配的 _id,这样您就可以在用户禁用它们时取消特定的日子。
顺便说一下,DateTime
有 a weekday property 表示它代表星期几。例如,要查找下周一,您可以将一天添加到 DateTime.now()
直到 weekday == 1
。