本文件說明如何透過以下方式將 APK 版本發布給測試人員:
Fastlane、
這個開放原始碼平台能夠自動建構及發布 iOS 和 Android
應用程式。本文件遵循 Fastfile
中定義的指示。設定完成後
快速車道和 Fastfile
,將你的 App Distribution 與
Quicklane 設定。
事前準備
如果您尚未將 Firebase 新增至 Android,請先完成這項操作。 專案。
如果您沒有使用其他 Firebase 產品,只要建立 並註冊應用程式不過,如果您決定使用額外的 在日後推出產品時,請務必完成本頁列出的所有步驟 。
步驟 1:設定 Fastlane
如要將 App Distribution 新增至 Quicklane 設定,請執行下列指令 呼叫 Android 專案根目錄中的指令:
fastlane add_plugin firebase_app_distribution
如果指令提示您選擇選項,請選取
Option 3: RubyGems.org
。
步驟 2:透過 Firebase 驗證
您必須先透過 您可透過下列其中一種方式處理 Firebase 專案。根據預設,Fastlane 外掛程式 如果沒有其他驗證,則會尋找 Firebase CLI 提供的憑證 方法。
步驟 3:設定 Fastfile 並發布應用程式
- 在
./fastlane/Fastfile
的車道上新增firebase_app_distribution
區塊。使用下列參數即可 設定發行版:firebase_app_distribution 參數 app
必要:應用程式的 Firebase 應用程式 ID。個人中心 您可以在 Firebase 控制台的 「一般設定」頁面。
app: "1:1234567890:android:0a1b2c3d4e5f67890"
firebase_cli_token
使用 Firebase CLI (讀取 搭配使用 CLI 與持續整合系統 的說明)。
service_credentials_file
Google 服務帳戶 JSON 檔案的路徑。請參閱上述說明 使用服務帳戶憑證進行驗證。
android_artifact_type
指定 Android 檔案類型 (APK 或 AAB)。
android_artifact_path
取代
apk_path
(已淘汰)。通往目標的絕對路徑 要上傳的 APK 或 AAB 檔案。如果 未指定,且 Fastlane 從車道上決定檔案位置 產生檔案所在資料夾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"
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 控制台查看自動測試結果。
debug
布林值標記。您可以將這個選項設為
true
顯示詳細偵錯輸出內容
platform :android do desc "My awesome app" lane :distribute do build_android_app(...) # build_android_app is a built-in fastlane action. release = firebase_app_distribution( app: "1:123456789:android:abcd1234", testers: "tester1@company.com, tester2@company.com", release_notes: "Lots of amazing new features to test out!" ) end end
為了讓測試人員使用版本,請採取以下行動:
fastlane <lane>
動作的傳回值是代表已上傳版本的雜湊。
也可透過 lane_context[SharedValues::FIREBASE_APP_DISTRO_RELEASE]
使用這個雜湊。
如要進一步瞭解這個雜湊中的可用欄位,請參閱
REST API 說明文件。
Quicklane 外掛程式會在發布版本上傳後輸出下列連結。這些 連結可協助您管理二進位檔,並確保測試人員和其他開發人員 正確的版本:
- 導向 Firebase 控制台的連結,當中顯示 單曲發布。您可以透過 機構。
- 測試人員體驗中的版本連結 (Android 原生應用程式),可供測試人員查看版本 ,並在裝置上安裝這個應用程式。測試人員需要存取 才能使用連結。
- 已簽署的連結,可直接下載 安裝應用程式二進位檔 (APK 或 AAB 檔案)。連結將於一後失效 小時。
發布版本之後,即可在 Firebase 控制台的 App Distribution 資訊主頁,為期 150 天。 如果版本到期 30 天,系統會在以下時間過後顯示到期通知: ,以及測試人員的測試版本清單中。
先前未受邀測試應用程式的測試人員會收到電子郵件 即可開始使用。現有測試人員會收到電子郵件通知 新的版本已可進行測試如要瞭解如何安裝測試應用程式, 請參閱測試人員設定指南。您可以監控 每位測試人員的狀態,以便判斷他們是否接受 以及他們是否下載了應用程式 Firebase 控制台。
(選用) 如要在每次建立時自動增加版本號碼
建議您使用
firebase_app_distribution_get_latest_release
個動作
例如 increment_version_code
Fastlane 外掛程式。
以下程式碼範例說明如何自動將
版本號碼:
lane :increment_version do
latest_release = firebase_app_distribution_get_latest_release(
app: "<your Firebase app ID>"
)
increment_version_code({ version_code: latest_release[:buildVersion].to_i + 1 })
end
如要進一步瞭解 firebase_app_distribution_get_latest_release
動作,
請參閱「取得應用程式最新版本的相關資訊」。
步驟 4 (選用)。管理發行版本的測試人員
你可以使用Fastfile
來為專案或群組新增及移除測試人員
檔案或直接執行 auto 車道動作。直接執行動作
這會覆寫 Fastfile
中設定的值。
將測試人員新增至 Firebase 專案後,你就可以將測試人員新增至專案: 和個別版本從 Firebase 專案中移除的測試人員否 無法存取專案中的版本 有一段時間試用新版本
如果您需要大量測試人員,建議使用群組。
使用Fastfile
# Use lanes to add or remove testers from a project. lane(:add_testers) do firebase_app_distribution_add_testers( emails: "foo@google.com,bar@google.com" # or file: "/path/to/testers.txt" group_alias: "qa-team" # (Optional) add testers to this group ) end lane(:remove_testers) do firebase_app_distribution_remove_testers( emails: "foo@google.com,bar@google.com" # or file: "/path/to/testers.txt" group_alias: "qa-team" # (Optional) remove testers from this group only ) end
# Add or remove testers with the terminal $ fastlane add_testers $ fastlane remove_testers
執行 Quicklane 動作
fastlane run firebase_app_distribution_create_group display_name:"QA Team" alias:"qa-team"
fastlane run firebase_app_distribution_add_testers group_alias:"qa-team" emails:"foo@google.com,bar@google.com"
fastlane run firebase_app_distribution_remove_testers group_alias:"qa-team" emails:"foo@google.com,bar@google.com"
fastlane run firebase_app_distribution_delete_group alias:"qa-team"
您也可以使用 --file="/path/to/testers.txt
指定測試人員,而不使用
--emails
。
firebase_app_distribution_add_testers
和
firebase_app_distribution_remove_testers
項工作也接受下列工作
引數:
project_name
:您的 Firebase 專案編號。group_alias
(選用):系統會將測試人員新增至 (或從中移除): 指定的群組。service_credentials_file
:Google 服務憑證檔案的路徑。firebase_cli_token
:Firebase CLI 的驗證權杖。
service_credentials_file
和 firebase_cli_token
相同
上傳動作所使用的引數。
步驟 5 (選用)。取得應用程式最新版本的相關資訊
你可以使用「firebase_app_distribution_get_latest_release
」動作
,針對「應用程式發布」中的最新應用程式版本擷取相關資訊。
包括應用程式版本資訊、版本資訊和建立時間用途
包括自動擴充版本並保留
以及先前版本的版本資訊
動作的傳回值是代表最新版本的雜湊。
也可透過 lane_context[SharedValues::FIREBASE_APP_DISTRO_LATEST_RELEASE]
使用這個雜湊。
如要進一步瞭解這個雜湊中的可用欄位,請參閱
REST API 說明文件。
參數
firebase_app_distribution_get_latest_release 參數 | |
---|---|
app
|
必要:應用程式的 Firebase 應用程式 ID。個人中心 您可以在 Firebase 控制台的 「一般設定」頁面。 app: "1:1234567890:android:0a1b2c3d4e5f67890" |
firebase_cli_token
|
使用 Firebase CLI (讀取 搭配使用 CLI 與持續整合系統 的說明)。 |
service_credentials_file
|
Google 服務帳戶 JSON 檔案的路徑。請參閱上述說明 使用服務帳戶憑證進行驗證。 |
debug
|
布林值標記。您可以將這個選項設為 |