android - 重复通知设置静音时间

标签 android android-8.0-oreo

我环顾四周,找不到关于这个特定问题的任何答案。

我有一个应用程序,我有重复通知(由用户按小时设置,例如每 2 小时)

用户还需要设置安静时间,这样通知就不会在夜间响起。我将如何实现?我正在使用广播接收器,我可以将 Intent 传递给广播并包含一个 if 条件(在选择的时间之间),还是有办法在发送 Intent 之前执行此操作?

我设置时间的代码如下,但我正在努力寻找一种方法来增加安静时间......

alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), rcRepeatTime, broadcast);

最佳答案

通过获取用户设置的休假时间选择器,然后将 Intent 传递给广播接收器类来解决这个问题。 Receiver 类获得该 Intent 然后伪代码= if(times within A && B){send notification}else{no notifications};

如果选择这种方式,我可以每小时收到一次通知,但不会在晚上唤醒用户等。 对于大多数人来说可能是一件容易的事,但我仍在“学习 Android”,所以我对此很满意:)

关于android - 重复通知设置静音时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52868329/

相关文章:

android - 通过共享首选项保存 "if-statements"和统计信息

java - 数据库产生外键错误结果的问题

android - 数据未在 Android Pie 9.0 上显示

android-studio-3.0 - Android 键盘 (AOSP) 一直停止使用 Android O 模拟器

android - 将 Firebase 主题消息与 Android 通知 channel 一起使用

android - FirebaseMessagingService onReceivedMessage(RemteMessage rm) 在 oreo 版本中应用服务被终止模式时不调用

android - 不允许后台执行。 Android O 待定 Intent

java - 如何拆分 ArrayList 并将数据存储到 android 中的 String 数组中?

android - 深层链接不适用于 Android

android - Google Play 警告 : Your app contains a File-based XSS issue? JavaScript 启用 = True