アプリ間 (バックグラウンド処理とフォアグラウンド処理の両方) でメッセージを送信するために、aidl とブロードキャスト レシーバーを使用することの長所と短所は何ですか? インテント フィルターを使用したサブスクリプション モデルと、使いやすさと拡張性に優れたレシーバーを使用しています。vs AIDL に対してこのアプローチを使用することには欠点がありますか?
Thx ベン
アプリ間 (バックグラウンド処理とフォアグラウンド処理の両方) でメッセージを送信するために、aidl とブロードキャスト レシーバーを使用することの長所と短所は何ですか? インテント フィルターを使用したサブスクリプション モデルと、使いやすさと拡張性に優れたレシーバーを使用しています。vs AIDL に対してこのアプローチを使用することには欠点がありますか?
Thx ベン
レシーバーが常にリッスンしているとバッテリーレベルに負担がかかるため、1つの欠点はバッテリー寿命かもしれないと思います. ローカルでブロードキャストしない限り、ブロードキャスト時にアクセス許可を強調しないと、BroadCastReceivers にセキュリティ ホールが発生する可能性があります。もちろん、LocalBroadcastManager を使用できます。
私には AIDL の方が安全に思えますが、グループで一般的に使用するために抽象化するのは困難です。別のプロセスで作成したい多くの異なる API 呼び出しがある場合、AIDL ファイルが好きです。リモコンのようなものです。Broadcastreciever を使用すると、カスタム メソッドを直接呼び出して作業を行うのが難しくなる場合があります。