Developer Device Platform 詞彙

Developer Device Platform (DDP) 是 Google Cloud的商用級雲端優先平台,可用於遠端行動裝置自動化調度管理、自動化批次測試,以及代理式開發工作流程。DDP 會將受管理的裝置農場基礎架構直接整合至 Google Cloud 生態系統。本詞彙表依字母順序提供技術參考資料,說明定義 DDP 的重要概念、架構元件、API 介面、CLI 指令和作業模式。

請參閱本頁清單,瞭解 Developer Device Platform 和相關技術的基本術語。以下是其他重要詞彙的定義來源:


A

代理技能 (DDP 代理技能和遷移技能)

DDP 代理技能

特定工作指令集,在 Google CloudGitHub 的 Skills/skills/cloud/developer-device-platform-basics 下發布。DDP 代理程式技能專為 Antigravity、ChatGPT 和 Claude Code 等 AI 程式設計助理設計,可讓代理程式透過 Device Streaming API 以程式輔助方式租賃遠端裝置、初始化 ADB 轉送 Daemon、執行殼層指令、擷取影格緩衝區螢幕截圖,以及使用 gcloud device-run CLI 觸發自動化測試套件。

遷移技能

從 Firebase Test Lab 遷移至 Developer Device Platform 的技能,提供旗標和其他差異的詳細對應,並包含專為 AI 代理設計的純文字版本。

Android Test Orchestrator

Android Test Orchestrator 可讓您在應用程式的檢測叫用中執行每項測試。詳情請參閱「使用 Android Test Orchestrator」。

APK 集 (.apks)

bundletool 為 Android App Bundle (AAB) 產生的套件封裝格式。DDP 原生支援安裝 .apks 檔案。

AutomationSession Service (DeviceRun API)

DDP 的核心批次執行引擎,託管於 devicerun.googleapis.com。AutomationSession 服務可透過單一統一 API 呼叫,接受應用程式二進位檔和硬體條件。後端會以原子作業的形式,處理裝置分配、環境佈建、測試驅動程式執行、記錄收集和拆除作業。


C

Cloud Storage 模型 (使用者擁有的 bucket)

DDP 的儲存架構,其中所有測試輸入構件 (APK) 和輸出結果都託管在開發人員Google Cloud 專案 (例如 gs://<project_id>_devicerun) 擁有的儲存空間 bucket 中。


D

Developer Device Platform (DDP)

Google Cloud的企業平台,用於遠端裝置測試和代理式行動開發,託管於 Google Cloud。DDP 提供受管理的裝置農場基礎架構,與 Google Cloud 控制台、IAM、Cloud Billing 和 SDK 原生整合。

Device Catalog API

在 devicerun.googleapis.com 下託管的整合式裝置探索介面,符合 AIP 規範,適用於專案和位置。裝置目錄提供單一平面集合,涵蓋實體和虛擬 Android 和 iOS 裝置。每個項目都會公開穩定的不透明裝置 ID、硬體規格,以及即時機群容量和可用性信號。

目錄屬性 資料類型 說明
name 字串 資源路徑 (projects/my-project/locations/global/devices/device-id)。
form 列舉 硬體類型 (PHYSICAL 或 VIRTUAL)。
os_version 字串 OS 版本或 Android SDK 級別 (例如 35 或 17.4)。
availability 訊息 機群容量信號 (HIGH、MEDIUM、LOW、NONE)。

Device Run API

devicerun.googleapis.com 整合遠端裝置測試、目錄探索和 Agentic Workflows,提供雲端原生服務,詳情請參閱「Device Run 總覽」。

Device Streaming API

內建 Google Cloud 服務devicestreaming.googleapis.com,提供互動式遠端裝置串流功能。開發人員可以使用 Device Streaming API,將即時裝置螢幕畫面直接串流至 Android Studio。


E

執行作業

Developer Device Platform Device Run 的三層資源階層 (Session -> Job -> Execution) 中最低的一層。執行作業代表系統產生的具體執行階段嘗試,在分配的裝置上執行測試套件或 shard,擷取原始輸出記錄、系統記錄和錄影。


F

側翼

熱門的第三方開放原始碼用戶端測試執行工具,專為最佳化測試執行和 sharding 而開發。DDP 原生整合 Flank 的核心功能,包括 YAML 設定、進階歷來智慧型資料分割,以及指定重試,因此不需要外部包裝函式。


G

gcloud device-run

Google Cloud SDK 的主要指令列介面,用於 DDP 批次測試和串流作業。這項工具採用以資源為中心的 gcloud device-run <resource> <verb> 模式,提供提交測試工作階段、查詢裝置可用性、輪詢執行狀態,以及下載結果等指令。


J

工作

Developer Device Platform Device Run 三層資源階層中的中間層 (Session -> Job -> Execution)。工作會將特定自動化設定 (JobAction,例如 Android 檢測設備測試) 與目標裝置設定配對。啟用資料分割或重試功能時,單一工作會自動擴充為多項執行作業。


N

NO_ACCESS_BLOCKED_BY_ORG_ADMIN

DDP 裝置目錄中傳回的存取狀態標記,表示特定裝置型號或合作夥伴實驗室 (例如第三方原始設備製造商 (OEM) 硬體) 已由組織管理員使用 Google Cloud 資源管理工具標記或組織政策加以限制。


O

One Platform API 依附元件群組

Google Cloud 服務控制層功能,會自動觸發依附 API 的後端啟用作業。開發人員啟用 DDP API 時,系統會自動啟用依附元件群組。


P

Partner Device Labs

由 Google OEM 合作夥伴 (例如 Samsung、小米、OPPO、OnePlus、vivo、Transsion) 直接營運的遠端裝置實驗室,已整合至 DDP。合作夥伴實驗室可擴充裝置目錄的多樣性,且必須在Google Cloud 控制台中明確啟用專案層級。


S

依序重試不穩定測試

DDP 的重試機制可節省成本,只會隔離並重試 shard 內失敗的個別測試案例,預設會依序執行,而非同時重新執行整個 shard。

服務代理 (服務帳戶)

在 Google Cloud 專案中啟用 DDP API 時,系統會自動建立 Google 代管的 Google Cloud 服務帳戶。DDP 服務代理程式具備 IAM 服務權限,可安全地從使用者擁有的 Google Cloud Storage bucket 讀取輸入測試二進位檔,並將測試輸出記錄和影片寫入其中、將狀態通知發布至 Google Cloud Pub/Sub 主題,以及代表專案在代管資料中心調度硬體分配。

Service Usage/啟用 API

Google Cloud 服務管理子系統,負責為專案啟用及設定 Google Cloud API。如要啟用 DDP,必須具備專案層級權限,或 devicerun.googleapis.com、devicestreaming.googleapis.com 和 testing.googleapis.com 服務角色。

工作階段

Developer Device Platform Device Run 資源階層 (projects/my-project/locations/global/sessions/session-id) 中的頂層容器。工作階段會封裝使用者的批次提交作業,其中包含一或多個在裝置矩陣或 Gradle 模組中執行的工作,並產生匯總的 SessionReport。

在 Developer Device Platform Device Streaming API 中,deviceSession 代表單一遠端裝置串流工作階段。Device Streaming API 不會執行批次指令碼直到完成,而是保留單一裝置並開啟即時雙向連線,讓工程師或 AI 代理即時查看螢幕及控制裝置。

智慧型資料分割

Developer Device Platform Device Run (--sharding-option=smart) 的智慧型測試分區機制。智慧型 sharding 功能會分析最多 30 天的歷來測試執行資料、追蹤特定裝置型號的執行階段,並考量 Android Test Orchestrator 啟動負擔,將測試套件分配至指定時間長度的平衡 shard。


U

統一資料分割

Developer Device Platform Device Run 的測試發布策略 (--sharding-option=uniform --uniform-sharding-count=N),使用 AndroidJUnitRunner 的原生 -e numShards 和 -e shardIndex 參數,將 Android 檢測設備測試套件分區為固定數量的 shard ($N$)。