私のアプリケーションは、さまざまなフィルタリング パラメーターを指定してデータを検索しています。このデータは、複数のソース (つまり、インターネット上の複数のサイト) から取得されます。私は、他の開発者が独自のデータ ソースを実装できるようにしたいと考えています。そうすれば、私の側で何もしなくても、彼らはそれらを私のアプリケーションに「プラグイン」できるようになります。
それを達成するための最良の方法は何ですか?特に:
- 外部開発者は、自分の実装を私のプロセスに可視化するために何をすべきですか?
- そのような外部実装を見つけるにはどうすればよいですか?
- 発見したら、これらの各実装の識別子として何を使用できますか?
- 外部実装のさまざまな「メソッド」と通信する方法。
私の最善の推測は、サービスを使用することです:
- 外部開発者に、指定された URIでインテント フィルターを使用してサービスをセットアップしてもらいます。
- PackageManager #queryIntentServices メソッドを使用して、指定した URI に一致するすべてのサービスを一覧表示します。
- パッケージ名を識別子として使用して、そのパッケージで直接インテントを起動できるようにします。
- 外部の開発者は私のドキュメントで指定されたすべての意図に耳を傾け、適切に対応すると信じてください。PendingIntent または Messenger オブジェクトのいずれかを渡して、結果を取得します。
私はまだ試していませんが、私は Android の初心者です。これは適切な方法ですか?