0
如果一個LocalBroadcastManager駐留在同一個應用程序中,它可以向一個全局註冊的BroadcastReceiver發送一個Intent?或者我必須爲此使用context.sendBroadcast()嗎?LocalBroadcastManager可以將Intent發送到同一App中的全局BroadcastReceivers嗎?
如果一個LocalBroadcastManager駐留在同一個應用程序中,它可以向一個全局註冊的BroadcastReceiver發送一個Intent?或者我必須爲此使用context.sendBroadcast()嗎?LocalBroadcastManager可以將Intent發送到同一App中的全局BroadcastReceivers嗎?
No. LocalBroadcastManager
不能發送意圖到全球BroadcastReceivers
。
說明:
LocalBroadcastManager
有私家HashMap中,其中它映射到BroadcastReceiver
ArrayList<IntentFilter>
,當registerReceiver方法被明確地使用應用程序內的任何上下文中調用。它不包含在AndroidManifest.xml
中聲明的全球BroadcastReceivers
的任何記錄。因此,LocalBroadcastManager
不會將Intent發送到全球BroadcastReceivers
。
見AndroidManifest.xml
,而我是從我的應用程序調試
LocalBroadcastReceiver
捕獲下面的截圖其中有三個BroadcastReceivers
全局聲明,這個答案可能是正確的。 – JohnyTex