Androidブロードキャストを理解する

Androidブロードキャストを理解する

以下はAndroidブロードキャストシステムの核心的な知識の整理です:

一、ブロードキャストシステムの基本概念

  • 現実の例え:拡声器、ラジオ、テレビに似ており、「一箇所から送信し、複数箇所で受信する」仕組みです。
  • Androidの仕組み:柔軟なブロードキャストメッセージ機能を提供します。各アプリは関心のあるブロードキャストを登録し、特定の内容だけを受信できます。
  • ブロードキャストの送信元:システム(起動、電池残量変化など)または他のアプリケーションから送信されます。
  • 送信と受信:ブロードキャストの送信は主にIntentで実装します。受信にはBroadcastReceiverを使用します。Androidは送受信を自由に行うための完全なAPIを備えています。

二、ブロードキャストの種類と比較

Androidのブロードキャストは主に通常ブロードキャストと順序付きブロードキャストに分かれます。両者の主な違いは下記の通りです:

比較項目通常ブロードキャスト (Normal Broadcast)順序付きブロードキャスト (Ordered Broadcast)
実行方式完全非同期同期順次実行
受信タイミング送信後、全レシーバーが同時に受信同時に受信するレシーバーは1つだけ。処理完了後に次へ渡る
受信順序順序なし順序があり、優先度の高いレシーバーが先に受信
中断機能中断不可、すべてのレシーバーが受信する前のレシーバーがブロードキャストを中断でき、後続には届かない
パフォーマンス高速相対的に低速(伝達チェーンに依存)

三、動作フローの解説

  • 通常ブロードキャスト
    ブロードキャスト送信 → BroadcastReceiver1、BroadcastReceiver2、BroadcastReceiver3へ同時配信(放射状、遮断不可)。
  • 順序付きブロードキャスト
    ブロードキャスト送信 → BroadcastReceiver1(中断可) → BroadcastReceiver2(中断可) → BroadcastReceiver3(線形伝達)。

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です