谷歌平台添加订阅专用功能

编程入门 行业动态 更新时间:2024-10-12 10:24:45

谷歌平台添加订阅专用<a href=https://www.elefans.com/category/jswz/34/1771378.html style=功能"/>

谷歌平台添加订阅专用功能

订阅需使用 Android Play 管理中心进行配置。配置订阅后,您可以将 Google Play 结算服务添加到您的应用,以启用订阅的购买流程。订阅具有 Google Play 结算服务概览中提到的许多特性(例如结算周期、宽限期、免费试订等)。在阅读本节之前,您应该熟悉这些概念。

如需了解详情,请观看最新的订阅视频。

此外,在阅读本页的其余部分之前,您还应该启用实时开发者通知。借助实时开发者通知,您可以主动响应状态更改,提高互动度并减少用户流失。要启用这些通知,请参阅实时开发者通知。

您应该尝试在总体 Google Play 结算服务解决方案中考虑多个订阅用例。

 

  • 使用实时开发者通知处理与订阅相关的状态更改。
  • 暂停订阅。
  • 用户可以在订阅被取消时(但在订阅期结束之前)手动重新订阅。
  • 提供试订促销代码。
  • 用户可以升级或降级订阅(例如从个人方案升级为家庭方案)。
  • 退还订阅费用。
  • 撤消订阅。
  • 取消订阅。
  • 恢复订阅。
  • 延迟结算,向用户提供一段时间的免费订阅服务。
  • 赢回客户。

您可以结合使用 Google Play 结算库、Google Play Developer API 和实时开发者通知来处理这类用例。

使用实时开发者通知处理与订阅相关的状态

实时开发者通知是一种服务器推送通知,让您能够监控订阅的状态变化(如 SUBSCRIPTION_PURCHASED 或 SUBSCRIPTION_RECOVERED)。借助实时开发者通知,您可以主动响应状态更改,提高互动度并减少用户流失。如需启用这些通知,请参阅实时开发者通知。

如果您启用了实时开发者通知,则安全后端服务器会收到专门提醒您订阅状态发生变化的通知。您在收到实时开发者通知后必须调用 Developer API 来获取完整状态信息并更新您自己的后端状态。此类通知仅会告知您订阅状态发生变化;而不会提供订阅状态的完整信息。

检查 Developer API 时,您应始终执行以下操作:

 

  • 如果 expiryTimeMillis 是在将来,则始终授予权限。
  • 如果 autoRenewing = false,请尝试让用户重新注册,因为订阅将到期后结束。
  • 如果 paymentState = 0,请使用订阅中心深层链接将用户发送到订阅中心以解决其付款问题。

将来,我们可能会添加影响用户权限的其他状态变化(例如,在订阅过期后重新激活订阅)。为确保您的集成为这些功能做好准备,请务必通过调用 Developer API 并采取上述操作来处理任何未定义的通知。

用户处于宽限期 - SUBSCRIPTION_IN_GRACE_PERIOD

宽限期会持续一段时间,具体取决于您在 Google Play 管理中心内的应用内商品设置。Google Play 会在宽限期内尝试续订订阅。要提醒用户付款问题,请在应用中显示一条消息,告诉用户如何修正付款方式。否则,用户的订阅将会失效。例如,“为防止您的帐号发生中断,请转到 Google Play 订阅设置以修正您在 Google Play 上的付款方式。”此消息将链接到 Google Play 订阅设置,以便用户修正其付款方式。

如需确定用户处于宽限期的时长,请调用 Google Play Developer API。Google Play 会动态扩大 expiryTimeMillis 值,直到宽限期已过。在此时间段内,您应查看用户的订阅是否已取消、续订或暂停。您应该在 expiryTimeMillis 过后查看用户的当前订阅状态,以获取订阅的最新状态。

JSON 响应的内容取决于订阅的状态,如以下代码段所示。例如,如果您在宽限期内查询订阅(付款方式有误),则 expiryTimeMillis 会动态更新为未来时间戳,并且 paymentState 会设置为 0:

{
  "kind": "androidpublisher#subscriptionPurchase",
  ...
  "expiryTimeMillis": timestamp_in_future,
  "autoRenewing": true,
  ...
  "paymentState": 0  # Payment pending
}

 

如果您在成功续订后查询订阅(付款方式已更新),则 expiryTimeMillis 会设置为将来的时间戳,并且 paymentState 会设置为 1:

{
  "kind": "androidpublisher#subscriptionPurchase",
  ...
  "expiryTimeMillis": timestamp_in_future,
  "autoRenewing": true,
  ...
  "paymentState": 1  # Payment received
}

 

如果您在宽限期过后查询订阅,您将发现订阅处于暂停状态(如果您在 Google Play 管理中心启用了帐号保留功能)或被取消(如果您未在 Google Play 管理中心启用帐号保留功能)。有关 SUBSCRIPTION_ON_HOLD 和 SUBSCRIPTION_CANCELLED 的示例 JSON 响应,请参阅帐号保留 - SUBSCRIPTION_ON_HOLD 部分。</

更多推荐

谷歌平台添加订阅专用功能

本文发布于:2024-03-04 13:38:20,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1709404.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:功能   平台

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!