我是机器人中的诺布。我在Android中第一次注意到这个词LocalBroadcastReceiver
。任何人都知道在android中可以使用LocalBroadcastReceiver
的地方吗?
答案 0 :(得分:2)
LocalBroadCastReceiver
用于接收应用程序级广播,使用它时必须使用LocalBroadcastManager
,如果您不想在应用程序之外泄露数据,通常会使用它。
有关详细信息,请参阅: - http://developer.android.com/reference/android/support/v4/content/LocalBroadcastManager.html
考虑下载任何文件的情况,下载完成后,您希望将其通知您的应用程序,在这种情况下,您不需要发送系统级广播。
您将以这种方式发送广播: -
LocalBroadcastManager.getInstance(this).sendBroadcast("downloadComplete");
并以这种方式接收: -
LocalBroadcastManager.getInstance(this).registerReceiver(
mMessageReceiver, new IntentFilter("downloadComplete"));
其中mMessageReceiver是动态定义的接收器
答案 1 :(得分:1)
这与android中的普通广播一样。您从app中的任何地方发出意图,并且注册到此意图的接收者正在处理接收它。
本地只是意味着,广播只在您的应用内发送,而不是发送到整个Android系统。 - >更私密,更有效率