2019年12月7日土曜日

既存アプリのApp Bundle対応

基本

今までは以下のタスクでapkファイルが作成された。
./gradlew assembleRelease
App Bundleに対応するには、以下のタスクでaabファイルを作成する。
./gradlew bundleRelease

 fastlaneでの配信方法

apkファイルの配信設定がすでにあるなら、変更点は2つだけ。
  1. ビルドするタスクを bundleRelease にする
  2. upload_to_play_storeのパラメータを変更する
    1. apk_paths を aab_paths に変更
    2. skip_upload_apk: true を追加(設定しないとエラーになる。ドキュメント参照)

DeployGateでの配信方法

DeployGateはaabファイルに対応していないので、今まで通りapkファイルを送る必要がある。
ストア配信と同様にaabファイルを作成し、そこからbundletoolを使ってapkにするのが良さそう。
(ただ、aab→apk配信をGoogle Play側の責務と考えて、その部分はベータ版で確認する、という考え方もあり。bundletoolで作成するapkはuniversal版なので、ストアからDLできるものが同じになるわけではないため。
その場合、DeployGateは今まで通りassembleで良い)

参考

自分のアプリで対応した時の差分
https://github.com/75py/Bashful-Clock/compare/v1.0.1...v1.0.2