多数のブロードキャスト レシーバーを実装し、ユーザー設定に基づいてサービス内に登録するアプリケーションを作成しました。サービスは、そのメソッドのいくつかを呼び出すアクティビティにバインドされています。ブロードキャスト レシーバーが呼び出されると、サービスが開始され (または、既に実行されている場合はサービスの onstart が呼び出され)、サービスに何をすべきかを伝える文字列が渡されます。私の問題は、アクティビティが破棄されると(戻るボタン)、サービスも破棄され、ブロードキャストレシーバーが強制終了されることです。
マニフェストに受信者を登録できることはわかっています。これは、受信者が呼び出されたときに、ユーザーがそのオプションを選択したかどうかを確認することを意味します。ただし、アプリケーションにとって重要なレシーバーの 1 つは、プログラムでのみ登録できる「android.intent.action.HEADSET_PLUG」です。
私の質問は、サービスが破棄されたときにこの放送受信機をアクティブにしておく方法はあるのでしょうか? そうでない場合、誰もこの問題の回避策を見ることができますか?
ありがとう、ロブ