問題の定義:かなり大きなアプリがあり、それらはすべて互いに独立しているような複数のユースケースがあります。たとえば、独立したアプリであるa1、a2、a3、a4モジュール、またはメインアプリ「A」のユースケースがあるとします。独立したa1、a2、a3、a4はすべて購入可能なアプリであり、ユーザーはPlayストアではなく、当社のWebサイトにアクセスし、当社のWebサイトで料金を支払うことでa1またはa2をアクティブ化します。
つまり、基本的にアプリ「A」はPlayストアの無料アプリであり、a1、a2、a3、a4を起動するためのボタンを備えたダッシュボードのようなものです。ユーザーがa1ボタンをクリックすると、a1が既にインストールされているかどうかを確認して起動しますが、存在しない場合は、ダウンロードするためのリンクをユーザーに提供します。
オプション1:メインアプリ「A」とa1、a2、a3、a4をライブラリプロジェクトとして使用します。ただし、このアプローチでは、メインアプリAのサイズが大きすぎます。
オプション2: a1、a2、a3、a4を個別の.apkとしてビルドし、メインアプリ「A」のアセットフォルダーに配置して、必要に応じてインストールします。ここでもメインアプリAのサイズが大きくなっています。
オプション3: a1、a2、a3、a4をサードパーティのWebサイトまたはPlayストアにアップロードし、必要に応じてそこからダウンロードします。このようにして、メインアプリは軽量のままです。
観察:これらすべてのアプローチでは、ユーザーの電話に独自のアイコンがインストールされた独立したアプリがあります。したがって、基本的に、ユーザーはダッシュボード(最終的にはa1アプリのアクティビティからインテントを起動します)から起動するか、アプリa1を直接起動できます。
フォローアップの質問:この種の問題に取り組むために誰かが提案できる他の解決策はありますか?もう1つのことは、このアプローチを実行することで、アプリa1、a2、a3、a4を互いに独立して開発およびテストできることです。