【发布时间】:2015-12-18 09:25:49
【问题描述】:
我希望当前处于前台的任何应用程序的Activities 接收消息。
所以我发送LocalBroadcastManager 来在我的应用程序中分发消息。然后我的想法是拥有BaseActivity,所有其他Activities 必须扩展。在 onResume 中的 BaseActivity 中,接收者已为消息注册 (registerReceiver),而在 onPause 中未注册 (unregisterReceiver)。
这将始终有效,但当消息仅在 Activities 之间发生转换且前一个 Activity 在其 onPause 之后和下一个 Activity 在其 onResume 之前.
所以我想使用sendStickyBroadcast,这样消息会等到一些Activity 没有取出,但我明白了
此方法在 API 级别 21 中已弃用。
那么如何确保当前在前台的任何应用程序的活动都能接收到消息。
【问题讨论】:
-
什么组件(以及何时)发送本地广播?
-
为什么重要?让我们假设它是一些后台作业,并且发送的频率不高,几分钟一次。
-
例如如果它是一个服务然后绑定到它
标签: android android-activity android-lifecycle localbroadcastmanager sticky-broadcast