ここ数週間、Android アプリケーションを作成しようとしてきましたが、ほとんどすべてうまくいきましたが、疑問に思っていたことが 1 つあります。それは、インテントを使用したプラグイン機能です。
私が作成しようとしているのは、基本的にコミックリーダーです。現在使用しているバージョンでは、アプリケーションを開いてお気に入りのコミックのリストを取得し、1 つを入力して詳細ビューを取得し、最後にページにアクセスします。これは 3 つのアクティビティによって管理されます。リスト、詳細、ページ。ただし、現在、アプリケーションは 1 つのソース (サーバーからの特別な xml フィード) のコミックしか読み取ることができず、これを少し拡張できることを望んでいました (また、ページアクティビティやその他のものが必要です)で片付けられるので、一から作り直そうと思っていて、勉強のつもりで一からやってみようと思います)。そして、私は素晴らしいと思うアイデアを思いつきましたが、それが可能かどうかはわかりませんが、これは私が考えていることです:
- ユーザーはアプリケーションに入り、コミックの (最初は空の) リストを取得します。
- ユーザーがコミックを検索するボタンを押すと、「コミックを検索」などのインテントが起動します。これにより、システムは一致するすべてのアクティビティを表示する必要があります。これにより、さまざまなアプリケーションを通じてさまざまなコミック プロバイダを提供できるようになります。
- 別のアクティビティが開始され、ユーザーにいくつかのオプションが表示される場合があります (たとえば、ファイル ブラウザー)、または表示されない場合があります (xml フィードの例では、ロードする必要があります)。
- リストは最初のアクティビティに返され、ユーザーに表示されます。2 番目の (検索) アクティビティは終了しました。
- ユーザーはリストからコミックを選びます。これにより、いくつかの詳細アクティビティが開きます。詳細アクティビティは、選択したコミックに対応するキーを受け取る必要があります。これは、コミック プロバイダーの中でもユニークなはずです。詳細ビューは、何らかのコンテンツ プロバイダーまたはアクティビティ (いずれかが最も適している場合) を介してデータを取得する必要があります。
- ユーザーはページを選択できます。これは、ステップ 5 と同じルーチンである必要があります。
私の質問は、これは Android システムで可能ですか? もしそうなら、それは悪い考えですか? また、多かれ少なかれ同じことを達成するためのより良い方法はありますか?