サービスと放送受信機と混同していますが、この2つの関係はどうなっていますか?サービスを開始するときに放送受信機を呼び出さなければならないのはなぜですか?これら2つの要素の概念を誰かが親切に説明できますか
2 に答える
Service を開始するときに BroadcastRecevier を登録する必要はありません。つまり、BroadcastReceiver を登録しなくても、サービスは期待どおりに動作します。この2 つの間に依存関係がある必要はありません。
Gridtestmail で説明されているように、サービスは、ユーザーへのインターフェイスを持たずに、バックグラウンドで実行するプロセスです。
BroadcastReceiver は、発生している特定のイベント (たとえば、新しい Bluetooth デバイスの検出や着信呼び出しの受信など) について通知を受けたい場合に登録されます。着信コールを受信するために BroadcastReceiver を登録すると、onReceive()
すべての着信があるたびにレシーバのメソッドが呼び出されるため、それを処理できます。同様に、他のイベント検出についても同様です。
コンセプトが明確になったことを願っています。
サービス: バックグラウンドで何かを実行したい場合、アプリケーションが閉じられていても、これは常にバックグラウンドで実行されます。これは別のプロセスで作成できます。必要に応じて、サービスを他のアプリに提供することもできます。コンテンツや音楽のダウンロードが良い例です
ブロードキャスト レシーバー: 通常、システムは、必要に応じて登録することで、アプリで受信できる情報を送信します。そして、onReceive メソッドを使用することで、そのことが起こったときにやりたいことを行うことができます。例は、新しいSMSが到着したとき、または起動が完了したときに、システムがBroadcastReceiverを送信することです