我有一个非常独特的用例,我正在尝试实现,但没有获得成功。
我的应用程序可以接收带有内置计时器2分钟的通知。如果用户未打开通知,则会创建提醒通知并发出声音。
当应用程序在后台(不被刷掉)时,这非常有用。
但是,如果我收到通知并决定将应用程序滑走,则整个应用程序流程将被删除,并且通知中心中存在的通知无法创建提醒通知或访问我的应用程序。
我曾尝试以共享的首选项存储重要的数据/值,甚至尝试实现一个计时器,如本视频https://www.youtube.com/watch?v=lvibl8YJfGo所示。
但是,我的应用程序的核心标准是,即使不打开应用程序,也需要提醒用户已有的通知,这意味着即使应用程序被刷掉,提醒也应继续按预期运行。
我知道我可以通过实现服务来解决此问题,但是对于我来说,让服务无限期地在后台运行是一种矫kill过正的感觉。
我目前正在阅读有关警报管理器的信息,但看起来它也需要服务。
有人知道使用广播接收器或类似工具通过通知中心中的现有通知“触发/唤醒”我的应用程序的更好方法吗?
该应用程序需要同时在Oreo和Oreo之前的设备上运行。
注意:我已经实现了推送消息。滑动应用程序后收到的任何新消息仍然可以创建消息提醒。我唯一无法解决的情况是在收到消息通知后将其刷掉。