提醒:从 2021 年 8 月 2 日起,所有新应用都必须使用结算库版本 3 或更新版本。截至 2021 年 11 月 1 日,对现有应用的所有更新都必须使用结算库版本 3 或更新版本。了解详情

做好准备

本主题列出并说明了在您的应用中销售商品之前需要执行的设置步骤。大体上讲,此设置包括创建开发者帐号、创建和配置要销售的商品,以及启用和配置用于销售和管理商品的 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 结算库的依赖项。此库可让您访问用于连接到 Google Play 的 Android API。这样,您便可以访问购买信息、查询有关购买交易的更新、提示用户进行新的购买交易,等等。

Google 的 Maven 代码库中提供了 Google Play 结算库。将依赖项添加到应用的 build.gradle 文件中,如下所示:

dependencies {
    def billing_version = "3.0.0"

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

如果您使用的是 Kotlin,Play 结算库 KTX 模块包含了 Kotlin 扩展程序和协程支持,可让您在使用 Google Play 结算系统时编写惯用的 Kotlin 代码。如需将这些扩展程序包含在项目中,请将以下依赖项添加到应用的 build.gradle 文件中,如下所示:

dependencies {
    def billing_version = "3.0.0"

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

上传您的应用

将该库添加到您的应用后,构建并发布您的应用。在此步骤中,创建您的应用,然后将其发布到任何轨道,包括内部测试轨道

创建和配置您的商品

为您的应用启用 Google Play 结算服务功能后,您需要配置要销售的商品。

创建一次性商品和订阅的步骤相似。对于每个商品,您需要提供唯一的商品 ID、商品名、说明和定价信息。订阅具有其他必需的信息,如续订期、您是否提供免费试订,以及订阅是否有初次体验优惠。

Google Play 管理中心提供了一个可用于管理商品的网页界面。

  • 如需创建和配置一次性商品,请参阅创建受管理的商品。 请注意,Google Play 管理中心将一次性商品称为“受管理的商品”。

  • 如需创建和配置订阅,请参阅创建订阅

作为网页界面的替代方案,您还可以使用 Google Play Developer API 中的 inappproducts 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 订阅部分。

设置 Cloud Pub/Sub

如需启用实时开发者通知,您必须先使用自己的 Google Cloud Platform (GCP) 项目设置 Cloud Pub/Sub,然后再为您的应用启用通知。

如需使用 Cloud Pub/Sub,您必须拥有一个启用了 Cloud Pub/Sub API 的 GCP 项目。如果您不熟悉 GCP 和 Cloud Pub/Sub,请参阅快速入门指南

创建主题

如需开始接收通知,您必须创建一个主题,Google Play 应将通知发布到该主题。如需创建主题,请按照创建主题中的说明操作。

创建 Pub/Sub 订阅

如需接收发布到某个主题的消息,您必须创建对该主题的 Pub/Sub 订阅。如需创建 Pub/Sub 订阅,请执行以下操作:

  1. 阅读 Cloud Pub/Sub 订阅者指南,以确定是将订阅配置为“推送订阅”还是“拉取订阅”。
    • 推送订阅允许 Cloud Pub/Sub 通过发出 HTTPS 请求向您的安全后端服务器发送通知。
    • 拉取订阅要求您的安全后端服务器向 Cloud Pub/Sub 服务器发起请求以检索消息。
  2. 按照添加订阅中的说明来创建订阅。

针对您的主题授予发布权限

Cloud Pub/Sub 要求您向 Google Play 授予向您的主题发布通知的权限。

  1. 打开 Google Cloud Console
  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. 依次转到开发工具 > 服务和 API
  4. 滚动到页面底部的实时开发者通知部分。

    实时开发者通知部分
    图 4. 实时开发者通知部分。
  5. 主题名称字段中,输入您之前配置的完整 Cloud Pub/Sub 主题名称。主题名称应采用 projects/{project_id}/topics/{topic_name} 格式,其中 project_id 是项目的唯一标识符,topic_name 是之前创建的主题的名称。

  6. 点击发送测试消息以发送测试消息。执行测试发布有助于确保一切均已正确设置和配置。如果测试发布成功,则系统会显示一条消息,指出测试发布已成功。如果有此主题的订阅者,则该订阅者应收到测试消息。

    如果发布失败,则系统会显示错误。请确保主题名称正确,并且 google-play-developer-notifications@system.gserviceaccount.com 服务帐号拥有对该主题的 Pub/Sub 发布商访问权限。

  7. 点击更新主题

验证您的配置

为了接收实时开发者通知,您应创建安全的后端服务器,以使用发送到您的 Cloud Pub/Sub 主题的消息。

您可以使用 Google Play 管理中心的发送测试消息按钮来测试您的配置,如上一部分中所述。如果您尚未配置后端服务器以使用通知,可以使用 gcloud 命令行工具来验证配置。有关使用 gcloud 处理消息的说明,请参阅从订阅拉取消息

后续步骤