その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
という名前で説明します。
- 先ほどダウンロードしたjarファイルです。ダウンロードした時点では
- aabファイル
- Android Studioで作成したaabファイルです。以下では
app-release.aab
という名前で説明します。
- Android Studioで作成したaabファイルです。以下では
- jksファイル
- aabファイルを作成するときに使用したApp Bundle Keyファイルです。以下では
key-upload.jks
という名前で説明します。
- aabファイルを作成するときに使用したApp Bundle Keyファイルです。以下では
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_PASSWORD
、KEY_ALIAS
、KEY_PASSWORD
は、Android Studioでaabファイルを作成するときに指定したパスワードとエイリアスです。
これで、同じフォルダにapp-release.apks
ファイルが作成されます。
デバイスにインストール
デバイスをPCにUSBで接続し、以下のコマンドでインストールします。
> java -jar bundletool.jar install-apks --apks=app-release.apks
このとき、adbにパスが通っていないとエラーが出ます。エラーが出た場合は下記にパスを通してから実行します。
C:\Users\{ユーザー名}\AppData\Local\Android\Sdk\platform-tools
まとめ
以上の手順で、実機を使ってApp Bundleの動作確認ができます。一度環境を整えてしまえばそんなに手間はかかりませんので、ストアに公開する前には必ず確認するようにしたいですね。
最後に、Google公式ドキュメントの在処も載せておきます。
https://developer.android.com/studio/command-line/bundletool?hl=ja