Google Playストア公開用に作成したApp Bundleをテストする

そのApp Bundle、本当に動作しますか?

Google Playストア公開用に作成したApp Bundleがデバイス上で本当に動作するかどうか、確認する方法を紹介します。

ストアに公開したApp Bundleは、ユーザーがアプリをダウンロードするときに、ユーザーのデバイスに合わせたapkをGoogle Playが自動で作成します。必要なリソースだけを含んだapkが作成されるので、ダウンロードするデータサイズを削減する効果があるのですが、実際にストアで公開されるまでテストできないのは、不安ですよね。実際私は、アプリが全く起動しない状態で公開されてしまっていることに、公開されてから時間がたってから気付いて衝撃を受けたことがあります。事前にAndroid Studioで作成したapkで十分に動作確認していたにも関わらず、です。Android Studioで作成するapkと、公開用に署名したApp Bundleから作成するapkは、まったく同じではないということなんですね。ということで、安心してアプリのリリースに臨めるように、App Bundleのテスト方法を説明します。

環境

  • Windows10
  • bundletool 1.6.1

LinuxやMacでも基本的にやることは同じですが、bundletoolを動かすまでの手順が若干違うと思います。

App Bundleをテストするには、Googleが提供しているbundletoolというツールを使ってローカルでテストする方法と、Play Consoleの機能を使ってテストする方法がありますが、bundletoolはGoogle Playと同じ仕組みで動いているということなので、より手軽なbundletoolを使います。

Javaインストール

bundletoolはjarファイルで提供されていますので、Javaをインストールしておいてください。
https://www.java.com/ja/download/ie_manual.jsp

普通にインストールすればコマンドプロンプトからjavaコマンドが使えるはずですが、使えなかったら環境変数のPathを確認しましょう。

bundletoolダウンロード

bundletoolはGitHubのGoogleのリポジトリで提供されています。以下のリンクから、jarファイルをダウンロードします。
https://github.com/google/bundletool/releases

apkファイル作成

適当なフォルダを作成し、必要なファイルをまとめて入れておきます。

  • bundletool
    • 先ほどダウンロードしたjarファイルです。ダウンロードした時点ではbundletool-all-x.x.x.jarのような名前になっていると思いますが、以下ではbundletool.jarという名前で説明します。
  • aabファイル
    • Android Studioで作成したaabファイルです。以下ではapp-release.aabという名前で説明します。
  • jksファイル
    • aabファイルを作成するときに使用したApp Bundle Keyファイルです。以下ではkey-upload.jksという名前で説明します。

PowerShellまたはコマンドプロンプトで上記ファイルを置いたフォルダに移動し、次のコマンドでapkファイルを作成します。

> java -jar bundletool.jar build-apks --bundle=app-release.aab --output=app-release.apks `
>> --ks=key-upload.jks `
>> --ks-pass=pass:KEY_STORE_PASSWORD `
>> --ks-key-alias=KEY_ALIAS `
>> --key-pass=pass:KEY_PASSWORD

KEY_STORE_PASSWORDKEY_ALIASKEY_PASSWORDは、Android Studioでaabファイルを作成するときに指定したパスワードとエイリアスです。

これで、同じフォルダにapp-release.apksファイルが作成されます。

デバイスにインストール

デバイスをPCにUSBで接続し、以下のコマンドでインストールします。

> java -jar bundletool.jar install-apks --apks=app-release.apks

まとめ

以上の手順で、実機を使ってApp Bundleの動作確認ができます。一度環境を整えてしまえばそんなに手間はかかりませんので、ストアに公開する前には必ず確認するようにしたいですね。

最後に、Google公式ドキュメントの在処も載せておきます。
https://developer.android.com/studio/command-line/bundletool?hl=ja