つばくろぐ @takamii228

知は力なり

Firebase App DistributionがApp Bundleに対応したらしいので試してみた(失敗)

先日のGoogle I/OでFirebase App DistributionでのAndoirdアプリの配信でApp Bundle形式での配信に対応したとの発表がありました。今まではapkファイル形式での配信に限られていました。

firebase.googleblog.com

ちなみにApp Bundleへの対応は2021年の8月以降の新規アプリでは必須の対応となっています。すでにapk形式で配信しているアプリはapk形式での配信は継続できます。

android-developers.googleblog.com

これからはApp Bundleが主流になっていくと思われるので、早速試してみます。

Firebaseのプロジェクトを作成する

Firebase App Distributionを使うFirebaseプロジェクトを作成します。

詳細については以前のブログへの参照としてスキップします。

takamii.hatenablog.com

App Bundleファイルを作成する

今回はAndroid Studioで新規プロジェクトをBasic Activityで作成したものをそのまま使います。

App Bundleファイルの作成はGradle taskのbundleタスクを実行すればよいです。

f:id:takamii228:20210626140835p:plain

なおAndroid Studio 4.2からGradle TaskがGradleのビューに出なくなってますが、設定で表示するように変更ができます。

stackoverflow.com

ターミナルで実行する場合は以下のコマンドを実行すればよいです。自分でproduct flavorを定義している場合はbunlde${xxxx}の形になります。

$ ./gradlew bundle  

実行するとapp-debug.aabapp-release.aabというファイルがapp/build配下に生成されます。

$ tree app/build/outputs/bundle 
app/build/outputs/bundle
├── debug
│   └── app-debug.aab
└── release
    └── app-release.aab

2 directories, 2 files

Firebase App Distributionにアップロードする

生成したファイルをFirebase App Distributionへアップロードしてみます。

アップロード画面に行くと以下の注意書きが出てきました。

f:id:takamii228:20210626145303p:plain

どうやら開発者登録済みのアカウントでのGoogle Playへのリンクが必要なようです。

f:id:takamii228:20210626145413p:plain

開発者登録したアカウントで連携すると無事リンクができましたが、下の方のApp Linkのstatusがオンになりません。

f:id:takamii228:20210626145554p:plain

ドキュメントをよく読んでみると、以下の記述がありました。

・The app you upload to Google Play and Firebase must share the same package name.

・The app in Google Play must be in a published state. An app is published when its app store listing has been completed and approved, and the app has been distributed to a following Google Play track: internal, closed, production, or open-testing.

日本語版は以下です。

Google Play と Firebase にアップロードするアプリのパッケージ名が同じであること。

Google Play のアプリが公開中であること。「公開中」とは、そのアプリのストアの掲載情報が完成して承認されており、かつそのアプリが Google Play のトラック(内部テスト、クローズド テスト、本番環境テスト、オープンテスト)に配布されていることを言います。

firebase.google.com

どうやらGoogle Playで公開済みのアプリでないと利用できないようです。ぐぬぬー。

残念ながら私は配信しているアプリを持っていないので検証はここまでしかできませんでした。

Google Play周りの機能を利用するのでGoogle Play側でいろいろ整ってる必要があるようです。なので未公開のアプリを開発版でテスト配信に使う場合はまだまだapkでやる必要がありそうです。

もし業務で利用できる機会があったらまた試してみようと思います。