LocalBroadcastManager は、同じアプリ内に存在する場合、グローバルに登録された BroadcastReceiver にインテントを送信できますか? または、そのために context.sendBroadcast() を使用する必要がありますか?
1 に答える
1
No. LocalBroadcastManager
global に Intent を送信できませんBroadcastReceivers
。
説明:アプリケーション内の任意のコンテキストを使用してregisterReceiverメソッドが明示的に呼び出されると、 に
LocalBroadcastManager
マップBroadcastReceiver
されるプライベート HashMap があります。で宣言されたglobal のレコードは保持しません。したがって、Intent を global に送信しません。ArrayList<IntentFilter>
BroadcastReceivers
AndroidManifest.xml
LocalBroadcastManager
BroadcastReceivers
でグローバルに宣言されたLocalBroadcastReceiver
3 つのアプリケーションからデバッグ中にキャプチャされた以下のスクリーンショットを参照BroadcastReceivers
AndroidManifest.xml
于 2016-10-10T11:37:52.860 に答える