プロセス間の双方向通信をサポートするサービスにはAIDLとMessengerが存在します。 AIDLとMessengerの主な違いは下記になります。 ●AIDL サービスホスト(以降ホスト)は.aidlを作成し、サービスクライアント(以降クライアント)はこれを取り込む必要がある クライアントからのリクエストはBinderThread経由で、全てのリクエストが非同期通信となる ホストは必要に応じてクライアントからのリクエストをスレッドセーフに扱う必要がある .aidlに変更があった場合、クライアントも合わせてこれを更新する必要がある ●Messenger ホストとクライアント間の通信はHandler-Messageの仕組みで実現されているため.aidlが不要 クライアントからのリクエストはHandler経由で通知され、全てのリクエストが同期通信となる ホストとクライアント間のメッセージはMe
![Android:Messengerの基本](https://cdn-ak-scissors.b.st-hatena.com/image/square/fb66ebd722b445fd1173f8ec13893d796e54354b/height=288;version=1;width=512/http%3A%2F%2F1.bp.blogspot.com%2F-PzfS7lX9mvM%2FURjIVBe0z3I%2FAAAAAAAAC4Y%2FHzArxrpylBY%2Fw1200-h630-p-k-no-nu%2Fmessage_queue.png)