相互に通信するサービスとアプリケーションを作成しました。それらは別々のパッケージにあり、IPC を介して (特に AIDL を介して) 通信します。通信中に交換されるオブジェクトはBundle
、各フィールドがキーに関連付けられている型String
です。したがって、サービスとアプリケーションの両方が同じキーを「共有」(つまり使用) する必要があります。
したがって、クラス内などで上記のキーを使用する定数をいくつか定義し、これらの定数をサービスとアプリケーションの両方で使用することを考えました。私が考えた唯一の代替案は、3 番目のプロジェクトを作成し、この 3 番目のプロジェクト内で共通の定数を持つクラスを定義することでした。このプロジェクトを jar ファイルとしてエクスポートし、それを他の 2 つのプロジェクト (つまり、サービスとアプリケーション) に追加した後です。
さらなる代替手段はありますか?