Adobe が App Bundle と Dynamic Delivery でアプリサイズを 20% 削減

Adobe のクリエイティビティ ツールと生産性向上ツールは、1982 年以来の実績があります。Photoshop、Illustrator、Lightroom などの Adobe アプリは長きにわたってクリエイティブ分野の信頼を得てきましたが、Adobe の存在を浸透させた立役者は、30 年近く前に生み出されたシンプルな PDF かもしれません。

Adobe のフラグシップ Android モバイルアプリである Adobe Acrobat Reader は、PDF ドキュメントの表示、署名、コメント付けができる、信頼性に優れた無料アプリです。グローバル スタンダードとして、ダウンロード数は 5 億を超えています。長い歴史があるうえに、さらに進化を続けているアプリです。「昨年、Android アプリには数多くの機能が追加されました」と、Adobe のコンピュータ サイエンティスト、Shubham Garg 氏は述べています。新機能はユーザーの評価もよかったのですが、一方でアプリのサイズが大きくなって、コンバージョンが低下してしまったようです。「特に途上国で、この 2 つの問題が目立つ結果になっています」と Shubham 氏は指摘します。

Adobe の取り組み

Adobe は Android App Bundle を使用することで、それほど手間をかけずに Acrobat のアプリサイズを削減できました。「App Bundle に移行するのは簡単でした」と Shubham は言います。「Adobe のアプリはすでに最低限のバージョンの Android SDK をサポートし、Gradle 要件に対応していたため、当社で必要なコード変更はごくわずかでした」Google に署名鍵のコピーを安全に転送するだけで、その後のロールアウトは簡単だったようです。

Adobe ではバンドル化に加えて、複数のアプリ機能をモジュール化することで、アプリサイズをさらに削減できました。「すでにアプリ内でライブラリ モジュールを使用していましたが、動的な機能を利用することで、別の観点からモジュール化にアプローチできました」と、Shhamham 氏は話します。「アプリは、機能に関するコンパイル時の依存関係がなく、スタンドアロンとして配信されます。必要な機能は後でインストールできます」

モジュール化した最初の機能は「塗りつぶしと署名」でした。Dynamic Delivery を使用することで、画面密度と言語固有のリソースを各 APK に含める必要がなくなりました。また、すでに古い APK をアーキテクチャごとに分割していたため、チームは App Bundle との互換性のために追加の作業を行う必要がありませんでした。

結果

App Bundle と Dynamic Delivery によって、Acrobat のアプリのサイズが 15 MB(約 22~25%)削減されました。サイズの削減が 30% に達したデバイスもありました。 結果的にロールアウトは成功しました。「パフォーマンス低下は発生せず、ダウンロードもシームレスでした」と Shubham 氏は述べています。それにはテストのしやすさも貢献したと Shubham 氏は考えています。「内部アプリ共有によって、Play ストアを利用できるようになりました。またバージョニングを気にすることなく、デバッグ可能なアプリもアップロードできました」

バンドル化を行えば、Google Play に 1 つのアーティファクトをアップロードするだけで済むため、それもチームの時間短縮につながっています。「以前は、アーキテクチャごとに分割した 4 つの異なる APK を使用する必要がありました」と Shubham 氏は語ります。現在ではバンドルは 1 つだけです。またインストールのコンバージョン率が 5~7% 向上したことで、アプリのサイズについて不満を持つユーザーが減りました。

Dynamic Delivery については、アプリのインストールが小さく高速であると Shubham 氏は述べています。モジュール化を行う以前は、リリースごとに 4 つの異なる APK をアップロードしていました。APK ごとにバージョン コードが異なるため、指標とアナリティクスを個別に測定しなければなりませんでした。これは煩雑で、エラーも発生しやすくなります。しかし App Bundle では、1 つのバージョン コードで 1 つのアーティファクトをアップロードするだけで済みます。「それによって開発プロセスが簡素化されました。今では複数のテスターで 1 つのビルドをテストするだけで、すべてのデバイスで機能することを確認できます」と Shubham 氏は話します。

今後はどうなるでしょうか。「条件付き配信機能をテストしようと考えています。特定のオーディエンスをターゲットにして、アプリのサイズ削減や特定の機能の動的配信による効果を見てみたいです」と Shubham は語ります。

始める

Android App Bundle は、アプリやゲームのデベロッパーの皆様にご利用いただけます。 ぜひお試しください。