私のチームは、(同じ電話で) データを交換する複数の Android アプリケーションで構成される Android プロジェクトに取り組んでいます。アイデアは、いくつかのデータを収集し、このデータをメインアプリケーションに送信するいくつかのアプリケーションを持つことです。ここでの主な課題は、CPU 負荷とバッテリー使用量の観点から、交換をできるだけ安く行うことです。
私の知る限り、プロセス間通信を実現するには 2 つの方法があります。
- インテントとアクティビティ - あるアクティビティが別のアクティビティのインテントをキャッチ
- リモート メソッド (AIDL 経由)
次のシナリオでは、どちらがより効率的か疑問に思います。
- 非常に頻繁なメッセージ/メソッド呼び出しで、送信されるデータ/トラフィックが非常に少ない (例: 一連のプリミティブを渡すだけ)
- トラフィック チャンクが大きく、メッセージ/メソッド呼び出しの頻度が低い (例: データを収集し、定期的に数 KB/MB のデータを送信する)
- 大きなデータ チャンクが交換される非常に頻繁なメッセージ/メソッド呼び出し
比較またはベンチマークへの参照/リンクのいずれかの点で、助けていただければ幸いです。