本指南介紹瞭如何使用 Firebase CLI 將 Android App Bundle (AAB) 分發給測試人員。 CLI 工具允許您為構建指定測試人員和發行說明,然後相應地分發構建。
App Distribution 與 Google Play 的內部應用共享服務集成,以處理您上傳的 AAB 並提供針對測試人員設備配置優化的 APK。分發 AAB 可讓您執行以下操作:
運行針對測試人員設備優化的優化 APK(由 Google Play 提供)。
發現並調試特定於設備的問題。
測試Play Feature Delivery和Play Asset Delivery等應用程序包功能。
減少測試人員的下載大小。
所需權限
要將 AAB 上傳到 App Distribution,您必須將您的 Firebase 應用鏈接到 Google Play 中的應用。您必須具有執行這些操作所需的訪問權限級別。
如果您沒有必要的 Firebase 訪問權限,您可以要求 Firebase 項目所有者通過Firebase 控制台 IAM 設置為您分配適用的角色。如果您對訪問您的 Firebase 項目有疑問,包括查找或分配所有者,請查看“Firebase 項目的權限和訪問權限”常見問題解答。
下表適用於將 Firebase 應用鏈接到 Google Play 中的應用,以及上傳 AAB。
Firebase 控制台中的操作 | 所需的 IAM 權限 | 默認情況下包含所需權限的 IAM 角色 | 額外的必需角色 |
---|---|---|---|
將 Firebase 應用關聯到 Google Play 中的應用 | firebase.playLinks.update | 以下角色之一: | 以管理員身份訪問 Google Play 開發者帳戶 |
將 AAB 上傳到 App Distribution | 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 控制台中,轉到您的
Project settings ,然後選擇Integrations選項卡。在Google Play卡片上,點擊鏈接。
如果您已有指向 Google Play 的鏈接,請點擊管理。按照屏幕上的說明啟用 App Distribution 集成並選擇要鏈接到 Google Play 的 Firebase Android 應用程序。
了解有關鏈接到 Google Play 的更多信息。
第 1 步。構建您的應用程序
當您準備好向測試人員分發應用的預發布版本時,構建您的 AAB(有關說明,請訪問Android Studio 文檔)。
第 2 步:將您的應用分發給測試人員
要將您的應用分發給測試人員,請使用 Firebase CLI 上傳您的應用文件:
- 安裝或更新到最新版本的Firebase CLI (我們建議下載適用於您操作系統的 CLI 的獨立二進製文件)。確保登錄並測試您是否可以訪問您的項目。
- 在 Firebase 控制台的App Distribution 頁面中,選擇您要分發的應用,然後點擊Get started 。
運行
appdistribution:distribute
命令以上傳您的應用程序並將其分發給測試人員。使用以下參數配置分發:應用程序分發:分發選項 --app
必需:您應用的 Firebase 應用 ID。您可以在 Firebase 控制台的常規設置頁面上找到應用程序 ID。
--app 1:1234567890:android:0a1b2c3d4e5f67890
--token
使用 Firebase CLI 對 CI 環境進行身份驗證時打印的刷新令牌(閱讀將 CLI 與 CI 系統結合使用了解更多信息)。
--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
您可以包含一個標誌來打印詳細的日誌輸出。
例如:
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
指定測試人員。-
分發構建後,它會在 Firebase 控制台的 App Distribution 儀表板中可用 150 天(五個月)。當構建距離到期還有 30 天時,控制台和測試人員在其測試設備上的構建列表中都會顯示到期通知。
未受邀測試應用程序的測試人員會收到開始測試的電子郵件邀請,而現有測試人員會收到新版本已準備好測試的電子郵件通知(有關如何安裝測試應用程序的說明,請閱讀測試人員設置指南)。您可以在 Firebase 控制台中監控每個測試人員的狀態——他們是否接受了邀請以及是否下載了應用程序。
測試人員有 30 天的時間接受邀請,在邀請到期前測試該應用。當邀請還有 5 天到期時,Firebase 控制台中發布的測試人員旁邊會顯示到期通知。可以通過使用測試人員行上的下拉菜單重新發送邀請來續訂邀請。
下一步
實施應用內反饋,使測試人員可以輕鬆發送有關您的應用的反饋(包括屏幕截圖)。
了解如何在您的應用程序的新版本可供安裝時向您的測試人員顯示應用程序內提醒。
了解使用 CI/CD 將 Android 應用分發給 QA 測試人員的最佳實踐。