将服务的价值传递给许多活动
passing value from Service to many Activities
我需要将值从服务传递给许多活动,其中一些活动甚至还没有初始化,但我希望这些活动在初始化时获得价值。我知道广播是一种有用的方式,但速度相对较慢。有什么办法可以实现这个目标吗?谢谢!
一种选择是使用 greenrobot's EventBus, using its sticky events 功能。让您的活动在 onStart()
中注册到总线并在 onStop()
中注销。根据需要使用 postSticky()
在总线上安排您的服务 post 事件。然后您的活动将获得事件:
当他们 posted
当他们在总线上注册时,如果在创建之前 post 编辑了一个粘性事件——他们会得到最后一个这样的事件
我需要将值从服务传递给许多活动,其中一些活动甚至还没有初始化,但我希望这些活动在初始化时获得价值。我知道广播是一种有用的方式,但速度相对较慢。有什么办法可以实现这个目标吗?谢谢!
一种选择是使用 greenrobot's EventBus, using its sticky events 功能。让您的活动在 onStart()
中注册到总线并在 onStop()
中注销。根据需要使用 postSticky()
在总线上安排您的服务 post 事件。然后您的活动将获得事件:
当他们 posted
当他们在总线上注册时,如果在创建之前 post 编辑了一个粘性事件——他们会得到最后一个这样的事件