Android提供全局registerReceiver()
,其签名为Handler
。使用LocalBroadcastManager.registerReceiver()
时,没有方法需要Handler
。为什么?如何提供将处理广播的Handler
?
答案 0 :(得分:1)
使用LocalBroadcastManager.registerReceiver()时,没有采用Handler的方法。为什么?
为什么会这样?没有方法需要HashMap
或Restaurant
。
如何提供处理广播的处理程序?
您的BroadcastReceiver
实例可以在数据成员中保留Handler
,可以转发该消息。
当然,在这种情况下,首先使用LocalBroadcastManager
几乎没有价值。只需使用Handler
(也许是Messenger
)。或者,切换到提供更多线程灵活性的事件总线,如greenrobot的EventBus,这样就可以摆脱Handler
。