本指南說明如何使用 Firebase CLI,將 Android App Bundle (AAB) 發布給測試人員。CLI 工具可讓您為版本指定測試人員和版本資訊,然後據此發布版本。
應用程式發布功能會與 Google Play 的內部應用程式分享服務整合,以處理您上傳的 AAB,並提供針對測試人員裝置設定最佳化的 APK。發布 AAB 可讓您執行下列操作:
執行針對測試人員裝置進行最佳化的最佳化 APK (由 Google Play 提供)。
找出裝置相關問題並進行偵錯。
測試應用程式套件功能,例如 Play Feature Delivery 和 Play Asset Delivery。
請為測試人員縮減下載大小。
所需權限
如要將 AAB 上傳至應用程式發布,您必須將 Firebase 應用程式連結至 Google Play 中的應用程式。您必須具備必要的存取層級,才能執行這些動作。
如果您沒有所需的 Firebase 存取權,可以要求 Firebase 專案擁有者透過 Firebase 控制台的身分與存取權管理設定,指派適用的角色。如果您對 Firebase 專案存取方式有任何疑問,包括如何尋找或指派擁有者,請參閱「Firebase 專案的權限和存取權」常見問題。
下表說明如何將 Firebase 應用程式連結至 Google Play 中的應用程式,以及上傳 AAB。
在 Firebase 控制台中執行的動作 | 必要的 IAM 權限 | 預設包含必要權限的 IAM 角色 | 其他必要角色 |
---|---|---|---|
將 Firebase 應用程式連結至 Google Play 中的應用程式 | firebase.playLinks.update
|
下列其中一個角色: | 以管理員身分存取 Google Play 開發人員帳戶 |
將 AAB 上傳至「應用程式發布」 | firebaseappdistro.releases.update
|
下列其中一個角色: | –– |
事前準備
如果您尚未將 Firebase 新增至 Android 專案,請先完成這項操作。這個工作流程結束時,您的 Firebase 專案中會有 Firebase Android 應用程式。
如果您沒有使用其他 Firebase 產品,則只需建立專案並註冊應用程式即可。如果您決定使用其他產品,請務必完成「將 Firebase 新增至您的 Android 專案」一文中的所有步驟。
如要建立 Google Play 的 Firebase 連結並上傳 AAB,請確認應用程式符合下列規定:
Google Play 中的應用程式和 Firebase Android 應用程式都使用相同的套件名稱註冊。
Google Play 中的應用程式是在應用程式資訊主頁中設定,並發布至其中一個 Google Play 測試群組 (內部測試、封閉測試、公開測試或正式版)。
應用程式在 Google Play 中的審查已完成,並已發布應用程式。 如果「應用程式狀態」欄顯示下列其中一種狀態,就表示應用程式已發布:內部測試 (非草稿內部測試)、封閉測試、公開測試或正式版。
將 Firebase Android 應用程式連結至 Google Play 開發人員帳戶:
在 Firebase 控制台中,前往
,然後選取「Integrations」(整合) 分頁標籤。 「Project settings」(專案設定) 按一下「Google Play」資訊卡中的「連結」。
如果已有 Google Play 連結,請改為點選「管理」。按照畫面上的指示啟用「應用程式發布」整合功能,並選取要連結至 Google Play 的 Firebase Android 應用程式。
進一步瞭解如何連結至 Google Play。
步驟 1:建構應用程式
當您準備好將應用程式的預先發布版發布給測試人員時,請建構 AAB (詳情請參閱 Android Studio 說明文件)。
步驟 2:將應用程式發布給測試人員
如要將應用程式發布給測試人員,請使用 Firebase CLI 上傳應用程式檔案:
- 安裝或更新至最新版 Firebase CLI (建議您下載 OS 專用的獨立二進位檔)。 請務必登入並測試您是否能存取專案。
- 在 Firebase 控制台的「應用程式發布」頁面中,選取要發行的應用程式,然後按一下「開始使用」。
-
執行
appdistribution:distribute
指令,上傳應用程式並發布給測試人員。使用下列參數設定分佈:應用程式發行:發行選項 --app
必要:應用程式的 Firebase 應用程式 ID。您可以在 Firebase 控制台的「一般設定」頁面中找到應用程式 ID。
--app 1:1234567890:android:0a1b2c3d4e5f67890
--token
透過 Firebase CLI 驗證持續整合環境時,畫面上顯示的更新權杖,詳情請參閱「搭配使用 CLI 與持續整合系統 」。
--token "$FIREBASE_TOKEN"
--release-notes
--release-notes-file
這個版本的版本資訊。
您可以直接指定版本資訊:
--release-notes "Text of release notes"
或指定純文字檔案的路徑:
--release-notes-file "/path/to/release-notes.txt"
--testers
--testers-file
邀請對象的電子郵件地址。
您可以利用逗號分隔的電子郵件地址清單形式指定測試人員:
--testers "ali@example.com, bri@example.com, cal@example.com"
或者,您可以指定純文字檔案的路徑,其中含有以半形逗號分隔的電子郵件地址清單:
--testers-file "/path/to/testers.txt"
--groups
--groups-file
您想邀請的測試人員群組 (請參閱「管理測試人員」)。您必須使用
群組別名 來指定群組,您可以在 Firebase 控制台中查詢這項資訊。可以使用逗號分隔的清單指定群組:
--groups "qa-team, trusted-testers"
或者,您可以指定包含群組名稱清單的純文字檔案路徑:
--groups-file "/path/to/groups.txt"
--debug
您可以加入的旗標,用來列印詳細記錄輸出。
--test-devices
--test-devices-file
下列發布類型屬於自動化測試人員 Beta 版功能。
您要發布版本的測試裝置 (請參閱「自動化測試」)。
您可以利用逗號分隔的電子郵件地址清單形式指定測試人員:
--test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"
或者,您可以指定純文字檔案的路徑,其中包含以半形分號分隔的測試裝置清單:
--test-devices-file: "/path/to/test-devices.txt"
--test-username
用於自動測試期間自動登入的使用者名稱。
--test-password
--test-password-file
自動登入用於自動測試的密碼。
或者,您可以指定含有密碼的純文字檔案路徑:
--test-password-file: "/path/to/test-password.txt"
--test-username-resource
用於自動測試期間自動登入的使用者名稱欄位的資源名稱。
--test-password-resource
密碼欄位的資源名稱,供自動測試使用。
--test-non-blocking
以非同步方式執行自動化測試。前往 Firebase 控制台查看自動測試結果。
例如:
firebase appdistribution:distribute test.aab \ --app 1:1234567890:android:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txt
發布版本上傳後,Firebase CLI 會輸出下列連結。 這些連結可協助您管理二進位檔,並確保測試人員和其他開發人員都有適當的版本:
firebase_console_uri
- 顯示單一版本的 Firebase 控制台連結。您可以將此連結分享給貴機構中的其他開發人員。testing_uri
- 測試人員體驗中的版本連結 (Android 原生應用程式),可讓測試人員查看版本資訊,並在裝置上安裝應用程式。測試人員必須取得版本的存取權,才能使用該連結。binary_download_uri
- 直接下載並安裝應用程式二進位檔 (APK 或 AAB 檔案) 的已簽署連結。連結將於一小時後失效。
管理測試人員和群組
除了發布版本,您也可以使用
appdistribution:testers:add
和appdistribution:testers:remove
邀請新的測試人員,或將現有的測試人員從 Firebase 專案中移除。將測試人員新增至 Firebase 專案後,即可將他們新增至個別版本。測試人員一經移除,就無法再存取您專案中的版本。請注意,最近遭移除的測試人員仍可在一段時間內繼續存取版本。
例如:
firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com
測試人員的電子郵件地址必須以空格分隔。您也可以使用
--file /path/to/testers.txt
指定測試人員。如果測試人員數量較多,建議您使用群組: 您可以使用
appdistribution:group:create
和appdistribution:group:delete
在 Firebase 專案中建立或刪除群組。使用
--group-alias
為appdistribution:testers:add
和appdistribution:testers:remove
指令指定群組。例如:
firebase appdistribution:group:create "QA team" qa-team
firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
firebase appdistribution:group:delete qa-team
版本發布後,在 Firebase 控制台的「應用程式發布」資訊主頁中會顯示 150 天 (五個月)。當版本過期 30 天後,主控台和測試人員的測試裝置上的版本清單都會顯示到期通知。
尚未受邀測試應用程式的測試人員會收到電子郵件入門邀請,現有測試人員則會收到新版本已可測試的電子郵件通知 (請參閱測試人員設定指南,瞭解如何安裝測試應用程式)。您可以監控每位測試人員的狀態,確認他們是否接受邀請,以及是否在 Firebase 控制台中下載應用程式。
測試人員有 30 天的時間可以接受邀請,在到期前接受測試應用程式。 邀請到期後的 5 天,每當有版本測試的測試人員旁邊,Firebase 控制台就會顯示到期通知。您可以使用測試人員列的下拉式選單重新傳送邀請,藉此續訂。