使用服務帳戶進行身份驗證

服務帳戶對於在 CI 環境中設置 App Distribution 非常有用。使用服務帳戶進行身份驗證允許您使用客戶端庫(例如 Firebase CLI、Gradle 和 fastlane)來分發您的構建。當您使用服務帳號進行身份驗證時,Firebase 使用應用程序默認憑據 (ADC)來查找應用的憑據,您可以通過設置GOOGLE_APPLICATION_CREDENTIALS環境變量或指向應用代碼中的服務帳號密鑰的路徑來提供該憑據。

  1. 打開Google Cloud Console並選擇您的項目。
  2. 單擊創建服務帳戶並輸入服務帳戶詳細信息。
  3. 單擊“創建並繼續”
  4. 添加Firebase App Distribution Admin角色並單擊Done
  5. 創建 JSON 私鑰並將密鑰移至構建環境可訪問的位置。請務必將此文件保存在安全的地方,因為它授予管理員對 Firebase 項目中的 App Distribution 的訪問權限。
  6. 如果您在 2019 年 9 月 20 日之後創建應用,請跳過此步驟:在 Google API 控制台中,啟用Firebase App Distribution API。出現提示時,選擇與您的 Firebase 項目同名的項目。

  7. 提供您的服務帳戶憑據:

    • 僅適用於 Gradle :在build.gradle文件中,將屬性serviceCredentialsFile設置為您的私鑰 JSON 文件:

      android {
      
          // ...
      
          buildTypes {
              release {
                  firebaseAppDistribution {
                      serviceCredentialsFile="/absolute/path/to/credentials/file.json"
                      releaseNotesFile="/path/to/releasenotes.txt"
                      testers="ali@example.com, bri@example.com, cal@example.com"
                  }
              }
          }
      
          // ...
      
      }
      

      或者,您可以按照以下步驟向應用程序代碼提供憑據。

    • 對於 Firebase CLI、fastlane 或 Gradle :將環境變量GOOGLE_APPLICATION_CREDENTIALS設置為私鑰 JSON 文件的路徑:

      export GOOGLE_APPLICATION_CREDENTIALS=/absolute/path/to/credentials/file.json