BroadcastReceiver 通知和 activity 消息

BroadcastReceiver notification and activity messages

我是 Android 的新手,需要一些帮助。

我有一个 activity 和一个广播接收器。 广播接收器应该监听 SMS Intents 并且:

  1. 如果 Activity 可见且交互 - SMS 应出现在 activity
  2. 如果否 - 广播接收器应使用 SMS 创建通知,因此如果用户单击该通知,将显示 activity

所以,我阅读了很多关于广播的文章,我可以实现其中一种变体(1 - 作为内部广播接收器 class 和 2 - 作为清单中声明的​​全局广播接收器),但我如何可以两者兼得吗?你能提出一些想法吗?

好的,所以在那种情况下我 post 我自己的解决方案。

我声明了两个广播接收器:一个在 Manifest 中声明,并对托盘通知执行 post,第二个 - 声明为 main activity 的内部 class 并执行 post 到 activity 个组件。我还有应用程序 class 的子 class 来跟踪主要 activity 状态(即可见或不可见)。因此全局广播接收器 post 仅当它看到 activity 立即隐藏时才会发出任何通知。

我认为这是合理的解决方案。