APK 和測試群組

您可以透過 Google Play Developer API 上傳應用程式的新 APK 並發布至不同的測試群組。您可以藉此 部署 Alpha 和 Beta 版應用程式 (如有 核准使用者。這也可讓您部署階段推出 會自動提供給少數 對使用者而言推出階段推出版本後 則可逐步增加 然後再將該版本部署為「正式環境」 版本。

新增及修改 APK

  1. 呼叫 Edits.apks: upload 方法。

    這個方法會將 APK 上傳到儲存空間「值區」, 指派給「曲目」以便為使用者部署(如果編輯內容 任何上傳至該編輯的 APK 都會一併遭到刪除 lost.)

  2. 在「測試群組」中發布 APK撥號 Edits.tracks:update。你可以 位於下列測試群組的 APK:

    • 測試群組,例如 "alpha""beta"

      向使用者部署應用程式的 Alpha 和 Beta 版本 您即可指派角色給 Alpha 和 Beta 版測試群組由您指派 將使用者加入這些群組。

    • 內部測試群組:"qa"

      內部版本的應用程式會部署至內部測試

    • 正式版群組:"production"

      「正式環境」版本已向所有使用者部署測試群組個人中心 可以在「正式版」中使用階段式版本追蹤文件 先向少數正式版使用者部署版本 然後在日後逐漸提高這個百分比時 隨著發布速度不斷成長

    簡易模式的使用者不應將多個 APK 放入任一 APK 軌道。使用多個 APK 的進階模式使用者 支援團隊 可將零、一或多個 APK 上傳至每個測試群組。

板型規格測試群組的追蹤名稱

板型規格軌道的軌跡名稱開頭是 或 ID。

板型規格 前置字串
Android Automotive OS 汽車業
Wear OS Wear
Android TV 電視

如何計算特定板型規格軌道的軌跡名稱?

常見的測試群組類型,例如正式版、公開測試和內部 測試群組具有知名的測試群組名稱。

追蹤類型 預設音軌名稱
正式版 製片
公開測試 Beta 版
內部測試 qa

特定板型規格軌道的軌跡名稱可以透過以下方式計算: "[prefix]:defaultTrackName"。 舉例來說,Wear OS 板型規格的測試群組名稱如下: "wear:production""wear:beta""wear:qa"

封閉測試群組是由手動建立,這類測試群組使用自訂 。因此針對名為「$name」的板型規格的封閉測試群組 軌跡名稱會是 "[prefix]:$name"

APK 工作流程範例

本節說明 Tracks API 的一般使用方式。在本例中 假設您是為每個測試群組上傳新版 APK 並指派 讓部分使用者取得階段推出版本。(在實務上 不太可能在同一次作業中採取上述所有動作; 您可能會在某天更新 Beta 版 「Production」其他天,依此類推)

  1. 按照下列說明開啟新的編輯項目: 編輯工作流程
  2. 呼叫 Edits.apks: upload 方法 每個要上傳的 APK在方法的要求中傳遞 APK (這會將 APK 置於儲存空間區域,但不會發布 可以在賽道上部署或部署)。此方法會傳回 上傳每個 APK將這個版本代碼用於 。
  3. 呼叫 Edits.tracks: update 方法 針對您要發布 APK 的各個測試群組進行設定。在要求主體中 傳遞 Edits.tracks 資源 。例如,若要發布 版本代碼為 88 的 APK:

    {
    "releases": [{
      "versionCodes": ["88"],
      "status": "completed"
    }]
    }
    

    目前使用者仍無法使用 APK。如同 其他編輯則需要您提交,這些變更才會生效。

  4. 呼叫 Edits: Commit 方法以 提交變更完成之後,各個測試群組的使用者 並根據該更新版本的 APK。(如同所有編輯操作, 可能需要數小時的時間才會生效)。

階段推出

如有想逐步部署的新版 APK,您可以 選擇以「階段推出」方式發布版本。如果這麼做 Google Play 會自動將範本部署到應用程式所需的 指定的使用者。如果「推出作業」APK 沒有任何問題 (例如 當機等事件) 後,您就可以增加新收到這些資訊的使用者 版本;準備就緒後,即可將該 APK 部署為新的正式版 版本。

本節將說明執行 階段推出 APK,然後將其升級為正式版:

  1. 按照「Edits Workflow」一文的說明建立編輯內容。

  2. 使用 Edits.apks: upload 方法。

  3. 使用以下方法在正式版群組中啟動 "inProgress" 階段推出版本: Edits.tracks: update 方法。選擇 預計收到新 APK 的使用者比例。目前 APK 一般使用 Google Cloud 服務時

    {
    "releases": [{
      "versionCodes": ["99"],
      "userFraction": 0.05,
      "status": "inProgress"
    }]
    }
    

  4. 呼叫以下程式碼,提交進行中的編輯項目變更: 編輯:修訂。接下來幾個 就會向使用者推出新的 APK。分數 且所選使用者將收到新的 APK。

此外,根據階段推出的成效,您可能會想增加 可發布或暫停版本的使用者百分比。

增加階段推出的使用者比例

如上文所述,假設您有 5% 的階段推出正在進行中 本節將說明如何提高 以便找出成效最佳的版本:

  1. 按照「Edits Workflow」一文的說明建立編輯內容。

  2. 使用以下程式碼變更正式版群組的 "inProgress" 階段推出版本: Edits.tracks: update 方法。調高 應收到新 APK 的使用者比例:

    {
    "releases": [{
      "versionCodes": ["99"],
      "userFraction": 0.1,
      "status": "inProgress"
    }]
    }
    

  3. 呼叫以下程式碼,提交進行中的編輯項目變更: 編輯:修訂。接下來幾個 就會向使用者推出新的 APK。分數 且所選使用者將收到新的 APK。

暫停階段推出作業

如上文所述,假設您有 5% 的階段推出正在進行中 部分,本節說明如何在下列情況中暫停階段推出作業 您發現問題:

  1. 按照「Edits Workflow」一文的說明建立編輯內容。

  2. 使用以下程式碼變更正式版群組的 "inProgress" 階段推出版本: Edits.tracks: update 方法。將 變更為 "halted"

    {
    "releases": [{
      "versionCodes": ["99"],
      "status": "halted"
    }]
    }
    

  3. 呼叫以下程式碼,提交進行中的編輯項目變更: 編輯:修訂。這個版本將不再收到 向新使用者提供

如果您之後決定恢復暫停推出的版本,可以設定 將狀態回復為 "inProgress"

完成階段推出作業

您滿意階段推出作業,並想將版本推出到 您可以將 100% 的使用者版本狀態設為「"completed"」:

  1. 按照「Edits Workflow」一文的說明建立編輯內容。

  2. 使用以下程式碼變更正式版群組的 "inProgress" 階段推出版本: Edits.tracks: update 方法。將 變更為 "completed"

    {
    "releases": [{
      "versionCodes": ["99"],
      "status": "completed"
    }]
    }
    

  3. 呼叫以下程式碼,提交進行中的編輯項目變更: 編輯:修訂。接下來幾個 就會向使用者推出新的 APK。分數 且所選使用者將收到新的 APK。

草稿版本

草稿版本可讓您自動上傳 APK 並透過以下方式建立版本: 您之後可透過 Google Play 管理中心部署 API目的地: 在測試群組中建立草稿版本:

  1. 按照下列說明開啟新的編輯項目: 編輯工作流程
  2. 呼叫 Edits.apks: upload 方法 每個要上傳的 APK在方法的要求主體中傳遞 APK。 方法會傳回每個上傳 APK 的版本代碼;您將使用這份 。
  3. 呼叫 Edits.tracks: update 方法 針對要發布應用程式的每個測試群組在要求主體中 傳遞 Edits.tracks 資源 包含您要建立的草稿版本例如:

    {
    "releases": [{
      "name": "My draft release",
      "versionCodes": ["88"],
      "status": "draft"
    }]
    }
    

  4. 呼叫 Edits: Commit 方法以 提交變更現在可以檢查及推出草稿版本了 透過 Google Play 管理中心或 API

指定版本資訊

當您發布新版本的應用程式時,您可以強調 以便提供新使用者的支援服務。

只要使用 "releaseNotes" 欄位提供 Edits.tracks 資源 Edits.tracks: update 方法。

{
  "releases": [{
      "name": "Release with notes",
      "versionCodes": ["88"],
      "status": "completed",
      "releaseNotes": [
        {"language": "en-US", "text": "Describe what's new in this release."}
      ]
  }]
}