2011-08-01 11 views
0

私は、私が他のプログラマーにapkとして提供したいリモートサービスを持っています。このリモートサービスは、サービスを制御するためのAPIを提供します。リモート・サービスをテストするために、別のパッケージにテスト・アプリケーションを作成しました。 AIDLをテストアプリケーションにエクスポートする必要があるため、これは機能しません。もちろん、私はリモートサービスをビルドパスに置くことができますが、それは私が望むものではありません。 スマートフォンにapkをインストールするだけで、他のプログラマが自分のアプリケーションで自分のAPIを使用できるようにしたいと思います。別の解決策は見当たりませんが、リモートサービスをapkではなくjarとして配布しています。リモートサービスas ap

Intentを起動できなかった場合にapkのダウンロードページを自動的に開くIntentを使用してコードを読み込んでいます。ただし、リモートサービスを使用する場合は、リモートサービスを使用するアプリケーションにAIDLを必ずインポートする必要がありますか、間違っていますか?関連付けがかなり緩んでいる場合

おかげで、ベニー

答えて

0

は、あなたが通信メカニズムではなく、サービス結合モデルとしてのインテントを使用することができるかもしれません。

現在のモジュールを維持する場合は、他のプログラマーが組み込むためのソースまたはjarとして必要なAIDLコードを提供することができます。これを行う場合は、いくつかのバージョン管理をインターフェースに入れ、互換性のないバージョンをどのように扱うべきかについて考えてください。これは、再利用可能なコンポーネントの仕組みが実際にどのように機能するかにはあまり変わりありません。クライアントプログラムのコンパイルをサポートするために再利用可能な外部モジュールのスタブを提供する必要があります。

+0

よろしくお願い申し上げます。リモートサービスの私のインターフェースには5つの方法があります。それらのうちの1つはパラメータとしてPendingIntentをとります。これは愚かな質問かもしれませんが、インテントを使用してAPIメソッドを呼び出すにはどうすればよいですか? – Benjamin

+0

私は自分のAIDLを他人に与えることはもちろん可能です。他の人が自分のリモートサービスを使用できるようにできるだけ簡単にしたいと思っていました。私のリモートサービスをjarファイルよりもapkファイルとして配布する方がずっと簡単です。 – Benjamin