【Android/Fastlane】Firebase App Distributionと連携して配布の自動化

【Android/Fastlane】Firebase App Distributionと連携して配布の自動化

この記事からわかること

  • Android Studio/KotlinFastlaneFirebase App Distribution連携する方法
  • ビルドから配布までを自動化するには?
  • firebase_app_distributionブロックのパラメータ一覧

index

[open]

\ アプリをリリースしました /

みんなの誕生日

友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-

posted withアプリーチ

環境

FastlaneでFirebase App Distributionへのアップロードを自動化する方法

AndroidアプリをFastlaneを使用してFirebase App Distributionへのアップロードを自動化していきたいと思います。AndroidプロジェクトへのFastlane自体の導入は以下の記事を参考にしてください。

実際にアップロードするためには以下の状態である必要があります。条件を満たしていない場合は先に条件を満たすようにしてください。

前準備

  1. Androidプロジェクトの作成
  2. Firebaseプロジェクトの作成と1との連携
  3. AndroidプロジェクトにFastlaneを導入済み
  4. Firebase CLIが導入済み

FastlaneにFirebaseプラグインの追加

まずはFastlaneにFirebaseプラグインを追加する必要があるので以下のコマンドを実行しておきます。

$ bundle exec fastlane add_plugin firebase_app_distribution

// fastlane はパス '/Users/ユーザー名/Desktop/AndroidApp/プロジェクト名/Gemfile' の Gemfile を変更しますか
Should fastlane modify the Gemfile at path
'/Users/ユーザー名/Desktop/AndroidApp/プロジェクト名/Gemfile' for you? (y/n)
// Y Enter

// 成功
Successfully installed plugins

App Distributionへのアップロード

Fastlane内でApp Distributionへアップロード処理を行うのはfirebase_app_distributionブロックです。パラメータには最低限アップロード対象のアプリIDとテスターなどを指定します。

アプリIDはFirebaseのプロジェクトの「歯車マーク」>「プロジェクトの設定」>「全般」>「Androidアプリ」から確認することができます。

【Kotlin/Firebase】AuthenticationでGoogleアカウントでログインを実装する方法!
platform :android do

  desc "App DistributionにリリースAPKファイルを自動アップロードする"
  lane :distribution_release_apk do
    # クリーンビルドしてリリースAPKを作成する
    gradle(task: "clean assembleRelease")

    # Firebase App Distribution
    firebase_app_distribution(
      # Firebaseに記載されているアプリID
      app: "1:123456789:android:abcd1234", 
      # 配布したいテスター一覧
      testers: "sample@sample.com, sample2@sample.com",
      # リリースノートに記述したい内容
      release_notes: "リリースノートに記述したい内容"
    )
  end

end

これで準備が整ったのでレーン名のdistribution_release_apkを実行すればクリーンビルドしてFirebase App DistributionにAPKをアップロードし、指定したテスターにアプリを配布することができます。

$ bundle exec fastlane distribution_release_apk

firebase_app_distributionのパラメータ一覧

firebase_app_distributionブロックで指定できるパラメータ一覧は公式リファレンスに記載されています。

公式リファレンス:ステップ 3. Fastfile を設定してアプリを配布する

firebase_app_distribution のパラメータ
app 必須:FirebaseアプリID
firebase_cli_token CI環境を認証するときに出力される更新トークン
service_credentials_file GoogleサービスアカウントのJSON ファイルのパス
android_artifact_type APK or AABのファイル形式を指定
android_artifact_path アップロードする APK or AAB ファイルの絶対パス
release_notes
release_notes_file
リリースノート
リリースノートの内容を記述したファイルのパス
testers
testers_file
テスターのメールアドレス(複数はカンマ区切り)
メールアドレスのリストを記述したファイルへのパス
groups
groups_file
テスターグループ名(グループエイリアスで指定/複数はカンマ区切り)
グループリストを記述したファイルへのパス
debug ブール値のフラグ。true に設定すると詳細なデバッグ情報が出力されます。

まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。

ご覧いただきありがとうございました。

searchbox

スポンサー

ProFile

ame

趣味:読書,プログラミング学習,サイト制作,ブログ

IT嫌いを克服するためにITパスを取得しようと勉強してからサイト制作が趣味に変わりました笑
今はCMSを使わずこのサイトを完全自作でサイト運営中〜

New Article

index