【问题标题】:Scheduling notifications in Android在 Android 中安排通知
【发布时间】:2010-03-31 09:47:54
【问题描述】:

我需要能够在未来的不同时间安排多个通知。

我尝试使用 AlarmManager 执行此操作,但这不合适,原因如下。来自 AlarmManager.set():“如果已经为这个 Intent 调度了一个警报(两个 Intent 的相等性由 filterEquals(Intent) 定义),那么它将被删除并替换为这个。”

猜猜看,发送意图相等的,除了不同的 Extra(但那些不计入 filterEquals)。

那么我如何安排多个通知,当我的应用程序被终止时仍会显示这些通知(我尝试 AlarmManager 的全部原因)?

谢谢。

【问题讨论】:

  • 就像给这个问题的未来读者的注释一样:您也可以让Intents 与众不同,而不会干扰您的应用程序逻辑。对于基于组件的Intents(例如new Intent(this, MyClass.class);)尤其如此。对于那些,动作和数据不是路由的一部分,因此您可以在其中填写一些内容以区分下一个。

标签: android notifications alarmmanager


【解决方案1】:

确定哪个事件将首先发生,安排该事件,当您的事件触发时,让它安排下一个事件发生。

【讨论】:

    【解决方案2】:

    我正在解决同样的问题并决定不使用 AlarmManager。计划的通知在测试环境中运行良好,但实际上用户收到了前几个通知,然后它就停止了,就好像警报被取消了一样。

    我决定使用每 15 分钟运行一次的服务,并为过期的事情发送通知。这样,如果发生某些事情,该过程至少会重新开始,就像警报由于某种原因被取消一样,它不会被重新创建。

    【讨论】:

      【解决方案3】:

      如果你想使用多种通知方式..使用不同的requestCode进行不同的时间通知

           notificationManager.notify(request_code_1,notification);
           notificationManager.notify(requestCode_2,notification);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-12-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-22
        • 1970-01-01
        相关资源
        最近更新 更多