之前有类似的问题,例如: How to have Android Service communicate with Activity
但在接受该问题的答案中,答案依赖于活动正在创建服务的事实。但是,我的问题是,如果活动没有创建服务该怎么办?
人们会说在同一个问题(有很多赞成票的问题)中遵循未接受的答案,这是服务广播到活动。
但我的问题是,如果活动想要在创建活动时知道服务中某些内容的当前值,而不是等到服务在该值发生变化时广播,该怎么办?
答案 0 :(得分:0)
如果活动想要在创建活动时知道服务中某些内容的当前值,而不是等到服务在该值发生变化时广播,该怎么办?
使用活动巴士。
例如,greenrobot's EventBus支持粘性事件。当您的活动注册粘性事件时,会立即将该类型的最后一个事件(以及未来的事件)传递给它。
或者,Square's Otto支持@Producer
注释。当您的活动注册@Producer
支持的事件时,它会立即获得@Producer
生成的值以及未来事件。