当您通过您的应用程序销售数字产品时,您必须考虑整个用户体验。应用内集成允许您启动购买流程并管理用户体验,但让您的后端及时了解用户购买的权利至关重要。这对于跟踪购买和管理用户体验的其他方面(如跨平台权利)非常重要。
为了监控购买生命周期事件并快速响应用户权利的更改,您应该在后端为订阅和一次性购买构建一个购买状态管理系统。此系统确保无论设备状态如何都能快速安全地处理购买,保持所有平台上用户权利的一致性,并提供在后端查询购买历史记录和权利数据的可能性。
Google Play 提供 实时开发者通知 (RTDN) 来监控购买生命周期事件,Play 开发者 API 可用于 订阅和应用内购买,可以根据这些事件采取必要的行动。通过使用这些工具并构建一个强大的购买生命周期管理系统,您可以提供无缝的用户体验并有效地管理购买和权利。
构建一个实时开发者通知客户端
在 Google Play 的计费系统上进行的购买在其整个生命周期中可能会经历多个权利更改。各种操作可能会触发这些更改,包括以下内容
- 由您的应用程序中的用户发起的操作。
- 由用户通过 Play 商店应用程序发起的操作。
- 直接从您的后端系统发起的操作。
- 您通过 Google Play 管理中心发起的操作。
例如
- 用户通过 Play 商店订阅中心取消订阅。
- 开发人员使用 Google Play 开发者 API 延迟订阅计费。
- 开发人员通过 Google Play 管理中心发出退款并撤销购买权利。
您的后端必须了解购买可能经历的不同状态,并及时采取所有必要的措施以相应地调整权利。
虽然可以使用 Google Play 开发者 API 手动检查购买状态,但依赖定期检查是一种非常低效的跟踪更改方式,并且容易出错和延迟。RTDN 可以帮助您立即响应更改,而无需为您的 Google Play 购买构建生命周期跟踪逻辑。
本节讨论如何构建 RTDN 的客户端。RTDN 是使用 Google Cloud Pub/Sub 构建的功能,当用户的权利状态发生更改时,它会向您的后端发送即时通知。Pub/Sub 系统包含一个发送通知的发布者和一个订阅这些通知的客户端。通过实施 RTDN,您可以实时跟踪用户权利状态的所有更改并及时响应它们。
RTDN 发布者
Google Play 的后端充当 RTDN 的发布者。要为您的应用程序设置 RTDN,请按照 设置 指南中的说明进行操作。这些步骤允许 Google Play 的计费系统充当您的应用程序 RTDN 的发布者。要完成此设置,您应该熟悉 Google Cloud Platform Console 以设置基本的 Pub/Sub 配置。
RTDN 订阅者
在设置发布者后,您应该准备您的后端来使用 RTDN。为此,您需要构建一个客户端来接收 Google Cloud Pub/Sub 消息。您的 RTDN 客户端的基本功能包括接收 PubSubMessage
实例,可以通过注册的端点上的 HTTPS 请求或使用 Cloud Pub/Sub 客户端库 来实现。请参阅 Pub/Sub 文档以了解如何使用 推送 或 拉取 策略,或参阅 RTDN 设置文档 以获取有关选择最适合您需求的策略的指南。
对于您收到的每条消息,您的后端应该执行以下操作
- 解压缩以 base-64 编码的
data
字段,其中包含 RTDN 对象。 - 触发与 RTDN 事件通知的授权更改相关的任何必需的后端进程。
处理购买状态转换
一次性购买和订阅购买根据可能影响它们的不同的状态和事件具有不同的生命周期。由于 RTDN,您无需构建逻辑来确认状态转换。您只需要定义当您的后端接收到每种类型的通知时会发生什么。
请参阅以下指南以详细了解这些场景