APK 和測試群組

您可以透過 Google Play Developer API 為您的應用程式上傳新的 APK 並發布至不同的測試群組。這樣您就可以部署 Alpha 和 Beta 版應用程式,提供給核准的使用者。這也可讓您部署階段推出版本,這個版本會自動提供給少數的應用程式使用者。發布階段推出版本後,您可以逐漸增加取得該應用程式版本的使用者人數,直到最後將該版本部署為「正式版」版本為止。

新增及修改 APK

  1. 呼叫 Edits.apks: upload 方法上傳一或多個 APK。

    這個方法會將 APK 上傳至儲存空間「值區」,以便將值區指派至「測試群組」,來為使用者部署 APK。(如果修改或遭捨棄,則上傳到該編輯內容的任何 APK 也會一併遺失)。

  2. 呼叫 Edits.tracks: update,在「tracks」上發布 APK。您可以在下列測試群組中發布 APK:

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

      Alpha 和 Beta 版應用程式會指派給您指派給 Alpha 和 Beta 測試的使用者。您可以透過 Google Play 管理中心將使用者指派至這些群組。

    • 內部測試群組:"internal"

      應用程式的內部版本會部署至您在 Google Play 管理中心中設定的內部測試群組。

    • 正式版群組:"production"

      所有使用者皆可取得「正式版」測試群組中的版本。您可以善用「正式版」階段的分階段發布功能,先安全地將版本部署於少數的實際工作環境使用者,再隨著版本增長的信心逐漸增加。

    簡易模式使用者不得將一個 APK 新增至任一測試群組中。使用多個 APK 支援的進階模式使用者可上傳 0、1 或多個 APK 至每個測試群組。

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

板型規格測試群組的測試群組名稱會加上特定 ID。

板型規格 前置字串
Android Automotive OS 機動車輛
Wear OS Wear

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

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

追蹤類型 預設曲目名稱
正式版 實際工作環境
公開測試 Beta 版
內部測試 qa

特定板型規格的軌道名稱可以按以下方式計算:"[prefix]:defaultTrackName"。 舉例來說,Wear OS 板型規格將有名稱為「"wear:production"」、「"wear:beta"」和「"wear:qa"」的測試群組。

封閉測試群組會手動建立,而且具有自訂名稱。因此,具有 $name 的板型規格的封閉測試群組具有 "[prefix]:$name" 的測試群組名稱。

APK 工作流程範例

本節將說明 Traces API 的使用方式。在這種情況下,我們假設您想為各個測試群組上傳新版 APK,並指派一些使用者來接收階段推出版本。(從實務上來看,開發人員不太可能在同一個作業中執行所有動作;您可改為更新一天的測試版,再於「正式版」建立分階段版本,依此類推)。

  1. 開啟新的編輯,如編輯工作流程中所述
  2. 針對您要上傳的每個 APK 呼叫 Edits.apks: upload 方法。將 APK 傳入方法的要求主體中。(這樣會將 APK 放在儲存空間區域中,但不會在測試群組上發布或部署。)這個方法會傳回您所上傳的每個 APK 版本代碼;當您用這個測試群組發布時,將會使用這個版本代碼參照該 APK。
  3. 針對要發布 APK 的每個測試群組呼叫 Edits.tracks: update 方法。在要求主體中,傳遞包含您要發布版本的 Edits.tracks 資源。舉例來說,如要發布版本代碼為 88 的 APK:

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

    目前使用者仍無法存取 APK。與其他編輯內容一樣,變更必須先經過修訂才會生效。

  4. 呼叫 Edits: Commit 方法以提交變更。完成上述步驟後,每個測試群組的使用者都會獲得新版 APK 版本。(就像所有編輯內容一樣,變更可能需要幾個小時才會生效)。

階段推出

當您有想要逐步部署的新版 APK 時,可以選擇將其發布為「階段推出」版本。如果您這麼做,Google Play 就會自動將其部署至您指定的應用程式使用者比例。如果「推出」APK 沒有任何問題 (例如當機等),您可以增加接收該版本的使用者比例;當您準備就緒時,就可以將該 APK 部署為新的正式版。

本節說明您在執行 APK 階段推出作業後將 APK 推送至正式版應用程式的步驟:

  1. 按照編輯工作流程中的說明建立編輯內容。

  2. 使用 Edits.apks: upload 方法將新的 APK 上傳到編輯項目。

  3. 使用 Edits.tracks: update 方法,在正式版測試群組中啟動 "inProgress" 分階段版本。選擇應接收新 APK 的使用者比例。目前,使用者仍然可以取得這個 APK。

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

  4. 透過呼叫 Edits: Commit 來修訂有效編輯中的變更內容。在接下來的幾小時內,我們將對使用者推出新的 APK。您選取的使用者百分比會接收新的 APK。

根據階段推出的成功情況,您可能需要提高符合該版本推出資格或暫停發布的使用者百分比。

分階段推出版本的使用者人數增幅

假設您有 5% 的進行階段推出作業,如上一節所述,本節說明如何在發布作業順利完成時增加百分比:

  1. 按照編輯工作流程中的說明建立編輯內容。

  2. 使用 Edits.tracks: update 方法更改正式版測試群組上的 "inProgress" 階段版本。增加應收到新 APK 的使用者比例:

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

  3. 透過呼叫 Edits: Commit 來修訂有效編輯中的變更內容。在接下來的幾小時內,我們將對使用者推出新的 APK。您選取的使用者百分比會接收新的 APK。

暫停階段推出作業

假設您有 5% 的進行階段推出作業,如上一節所述,當您遇到問題時,本節說明如何暫停階段推出作業:

  1. 按照編輯工作流程中的說明建立編輯內容。

  2. 使用 Edits.tracks: update 方法更改正式版測試群組上的 "inProgress" 階段版本。將狀態設為 "halted"

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

  3. 透過呼叫 Edits: Commit 來修訂有效編輯中的變更內容。此版本將不再提供給新使用者。

如果您之後決定恢復使用暫停版本,只要將其狀態設定為 "inProgress" 即可。

完成階段推出作業

對階段推出作業感到滿意後,如要將版本推出給 100% 的使用者,您可以將版本狀態設為 "completed"

  1. 按照編輯工作流程中的說明建立編輯內容。

  2. 使用 Edits.tracks: update 方法更改正式版測試群組上的 "inProgress" 階段版本。將狀態設為 "halted"

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

  3. 透過呼叫 Edits: Commit 來修訂有效編輯中的變更內容。在接下來的幾小時內,我們將對使用者推出新的 APK。您選取的使用者百分比會接收新的 APK。

草稿版本

草稿版本可讓您自動上傳 APK,並透過 API 建立版本,日後可透過 Google Play 管理中心部署。如何在測試群組中建立草稿版本:

  1. 開啟新的編輯,如編輯工作流程中所述
  2. 針對您要上傳的每個 APK 呼叫 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 檢查及推出草稿版本。

指定版本資訊

發布新版本時,您可以指定版本中的版本資訊,向使用者強調新功能。

為此,在提供 Edits.tracks 資源Edits.tracks: update 方法時,請使用 "releaseNotes" 欄位。

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