事前準備

本主題列出並說明在應用程式中販售產品前需採取的設定步驟。大致上,設定內容包括建立開發人員帳戶、建立並設定要販售的產品,以及啟用並設定用於販售及管理產品的 API。本主題還會描述如何設定在產品狀態變更時,開發人員如何收到即時通知。

設定 Google Play 開發人員帳戶

請使用 Google Play 管理中心,在 Google Play 上發布您的應用程式和遊戲。您也可以透過 Google Play 管理中心管理與帳單相關的產品和設定。

若要存取 Google Play 管理中心,您必須設定 Google Play 開發人員帳戶

如要在 Google Play 上販售付費應用程式和應用程式內購項目,您還必須在 Google 付款中心設定付款資料,並將其連結至 Google Play 開發人員帳戶。如要瞭解如何將付款資料連結至帳戶,或是如何確認自己是否擁有已連結的帳戶和付款資料,請參閱「將 Google Play 開發人員帳戶與付款資料連結」一文。

在 Google Play 管理中心啟用帳單相關功能

設定好開發人員帳戶之後,您必須發布包含 Google Play 帳款服務程式庫的應用程式版本。您必須完成這個步驟,才能在 Google Play 管理中心啟用帳單相關功能,例如設定您要販售的產品。

新增程式庫依附元件

如要整合 Google Play 的結帳系統,請先在應用程式中將依附元件新增至 Google Play 帳款服務程式庫。這個程式庫可讓您存取 Android API 以連結 Google Play。您可以透過這些 API 存取購買交易資訊、查詢購買交易的更新內容、提示使用者進行新的購買交易等等。

Google 的 Maven 存放區提供了 Google Play 帳款服務程式庫。將該依附元件新增至應用程式的 build.gradle 檔案,如下所示:

Groovy

dependencies {
    def billing_version = "7.0.0"

    implementation "com.android.billingclient:billing:$billing_version"
}

Kotlin

dependencies {
    val billing_version = "7.0.0"

    implementation("com.android.billingclient:billing:$billing_version")
}

如果您使用的是 Kotlin,Play 帳款服務程式庫 KTX 模組會包含 Kotlin 擴充功能和協同程式支援,可讓您在使用 Google Play 帳款服務程式庫時編寫慣用的 Kotlin 程式碼。如要在專案中加入這些擴充功能,請將下列依附元件新增至應用程式的 build.gradle 檔案,如下所示:

Groovy

dependencies {
    def billing_version = "7.0.0"

    implementation "com.android.billingclient:billing-ktx:$billing_version"
}

Kotlin

dependencies {
    val billing_version = "7.0.0"

    implementation("com.android.billingclient:billing-ktx:$billing_version")
}

本頁顯示的 Kotlin 程式碼範例會盡可能使用 KTX。

上傳應用程式

將程式庫新增至應用程式後,即可建構並發布應用程式。要執行此步驟,請先建立應用程式,然後發布至任何測試群組,包括內部測試群組

建立並設定產品

為應用程式啟用 Google Play 帳款服務功能之後,您必須設定要販售的產品。

建立一次性產品與建立訂閱內容的步驟類似。您必須為每個產品提供專屬的產品 ID、名稱、說明和價格資訊。如果是訂閱項目,還須提供其他必要資訊,例如選取該項目為自動續訂,還是基本方案的預付續訂類型。

Google Play 管理中心提供可用於管理產品的網頁介面。

  • 若要建立並設定一次性產品,請參閱建立納入管理的產品。請注意,Google Play 管理中心將一次性產品稱為納入管理的產品

  • 如要建立及設定訂閱項目,請參閱「建立訂閱項目」一文。

除了網頁介面以外,您也可以透過 Google Play Developer API,使用 inappproducts REST 資源管理應用程式內商品,使用 monetization.subscriptions REST 資源管理訂閱產品。

設定 Google Play Developer API

Google Play Developer API 是一種伺服器對伺服器的 API,與 Android 上的 Google Play 帳款服務程式庫相輔相成。這個 API 提供 Google Play 帳款服務程式庫不具備的功能,例如安全地驗證購買交易,以及向使用者核發退款。

將 Google Play 結帳系統整合到應用程式中時,您必須透過 Google Play 管理中心設定 Google Play Developer API 的存取權。如需操作說明,請參閱這篇文章,瞭解如何開始使用 Google Play Developer API。

設定 Google Play Developer API 的存取權後,請務必授予存取帳單相關功能所需的查看財務資料權限。如需最佳做法以及設定權限相關詳細資訊,請參閱「新增開發人員帳戶使用者以及管理各項權限」。

設定即時開發人員通知

即時開發人員通知 (RTDN) 這項機制可在應用程式內的使用者授權有變時,接收 Google 發出的通知。RTDN 會利用 Google Cloud Pub/Sub,讓您接收推送到指定網址的資料,或是透過用戶端程式庫執行輪詢取得的資料。這些通知可讓您對訂閱狀態變更立即做出回應,而無需對 Google Play Developer API 進行輪詢。請注意,Google Play Developer API 的低效率使用可能會導致 API 配額受到限制。

Cloud Pub/Sub 是全代管的即時訊息服務,可在不同應用程式之間收發訊息。Google Play 使用了 Cloud Pub/Sub,會根據您訂閱的主題發布推播通知。

若要接收通知,您必須建立後端伺服器來收取寄送給您的主題訊息。接著,伺服器可回應已註冊端點的 HTTPS 要求,或使用 Cloud Pub/Sub 用戶端程式庫來收取這些訊息。這些程式庫提供多種語言。本主題中有關建立 Pub/Sub 訂閱項目的章節也提供了更多資訊。

決定價格與配額

若要進一步瞭解價格與配額,請參閱價格配額頁面。

估算數據用量

在訂閱通知的資料部分,每個要求的資料約為 1 KB。每一次發布和提取時都需要分別提出要求,每則通知的資料約為 2 KB。每月通知數量視帳單週期和使用者的行為而定。在帳單週期內,預計每位使用者至少需要一則通知。

設定 Cloud Pub/Sub

如要啟用即時開發人員通知,您必須先使用自己的 Google Cloud Platform (GCP) 專案設定 Cloud Pub/Sub,然後為應用程式開啟通知功能。

您必須擁有已啟用 Cloud Pub/Sub API 的 GCP 專案,才能使用 Cloud Pub/Sub。如果您不熟悉 GCP 和 Cloud Pub/Sub,請參閱快速入門指南

建立主題

如要開始接收通知,您必須建立一個 Google Cloud 應發布通知的主題。請按照建立主題中的指示建立主題。

建立 Pub/Sub 訂閱項目

若要接收發布至某項主題的訊息,您必須為該主題建立一個 Pub/Sub 訂閱項目。請按照下列指示建立 Pub/Sub 訂閱項目:

  1. 請閲讀Cloud Pub/Sub 訂閱者指南來決定要將訂閱項目設定為發送式訂閱項目還是接收式訂閱項目
    • 發送式訂閱項目會讓 Cloud Pub/Sub 發出 HTTPS 要求,將通知傳送至安全的後端。
    • 提取式訂閱項目需要透過安全的後端伺服器,向 Cloud Pub/Sub 伺服器發出要求來擷取訊息。
  2. 按照新增訂閱項目中的指示建立訂閱項目。

授予主題的發布權限

您必須授予 Google Play 權限,才能讓 Cloud Pub/Sub 針對您的主題發布通知。

  1. 開啟 Google Cloud 控制台
  2. 選取專案,接著按一下左側導覽面板中的「Pub/Sub」
  3. 尋找您的主題,然後開啟權限詳細資料。

    存取權限主題的設定
    圖 1.存取「權限」主題的設定。
  4. 新增服務帳戶 google-play-developer-notifications@system.gserviceaccount.com,並對其授予 Pub/Sub 發布者的角色。

    新增 Google Play 服務帳戶做為 Pub/Sub 發布者
    圖 2.新增 Google Play 服務帳戶做為 Pub/Sub 發布者。
  5. 按一下「儲存」即可完成主題設定。

    設定好的主題
    圖 3.設定好的主題。

為應用程式啟用即時開發人員通知

若要為應用程式啟用即時開發人員通知,請按照下列指示操作:

  1. 開啟 Google Play 管理中心
  2. 選取應用程式。
  3. 依序前往「營利」>「營利設定」。
  4. 捲動至頁面頂端的「即時開發人員通知」部分。

    「即時開發人員通知」部分
    圖 4.「即時開發人員通知」部分。
  5. 勾選「啟用即時通知」

  6. 在「主題名稱」欄位中完整輸入您先前設定的 Cloud Pub/Sub 主題名稱。主題名稱應採用 projects/{project_id}/topics/{topic_name} 的格式,其中 project_id 是專案的專屬 ID,topic_name 是稍早建立的主題名稱。

  7. 按一下「傳送測試訊息」送出測試訊息。測試發布有助於確保已正確完成各項設定。如果測試發布成功,系統會顯示一則訊息,説明測試發布成功。如果這個主題附加了一個訂閱項目,則您應收到該測試訊息。

    如果是提取式訂閱項目,請前往 Cloud 控制台中的訂閱項目,按一下「查看訊息」,然後繼續提取訊息。您應確認接收到的任何訊息,以避免出現 Cloud Pub/Sub 重複傳遞的情況。如果是發送式訂閱項目,請確認測試訊息是否已傳遞至發送端。成功的回應代碼可用來確認訊息。

    如果發布失敗,系統會顯示錯誤。請確認主題名稱正確無誤,而且該 google-play-developer-notifications@system.gserviceaccount.com 服務帳戶擁有該主題的 Pub/Sub 發布者存取權。

  8. 選擇要接收的通知類型。

    • 接收訂閱項目和所有作廢購買交易的通知:接收與訂閱項目和作廢交易相關的即時開發人員通知。您不會收到一次性產品購買交易的通知。
    • 接收所有訂閱項目和一次性產品的通知:接收所有訂閱項目和作廢的購買事件的通知。您也會收到一次性產品購買交易事件,例如 ONE_TIME_PRODUCT_PURCHASEDONE_TIME_PRODUCT_CANCELED。如要進一步瞭解這些購買事件,請參閱「一次性消費生命週期」。
  9. 按一下「儲存變更」

驗證設定

如要接收即時開發人員通知,您必須建立一個安全後端伺服器,以取用傳送給您的 Cloud Pub/Sub 主題訊息。

如要測試設定,請使用 Google Play 管理中心的「傳送測試訊息」按鈕 (如上一節所述)。如果您尚未設定用來取用通知的後端伺服器,可以使用 gcloud 指令列工具驗證設定。關於使用 gcloud 處理訊息的相關說明,請參閱從訂閱項目接收訊息

後續步驟