我正在使用 Inapp Billing v3 开发一个具有订阅功能的应用程序。有登录机制来访问该应用程序。如果用户“X”订阅了一项功能并注销。如果用户“Y”在同一设备上登录应用程序并且用户尝试订阅,Google Play 会告知该产品已被购买。订阅是否基于设备中同步的帐户,而不是基于登录应用程序的用户?如果是这样,如何实现我的场景?
问问题
2042 次
2 回答
5
Google Play 应用内结算订阅绑定到 Google Play 帐户。因此,只要未更改 Google 帐户,订阅就被视为对该帐户有效,您不能再购买一次。
如果您想用自己的帐户替换 Google 帐户系统,则需要“欺骗”Google Play。您可以做的是创建一个包含多个不同应用内计费订阅的池(如订阅 #1、订阅 #2 等)。当您订阅时,您将自己的登录信息作为developerPayload
字段中的附加参数传递。
现在,当您枚举所有可用订阅时,您会检查该字段中是否有一个具有当前用户帐户的订阅developerPayload
。如果没有,那么您认为当前用户没有订阅,并允许使用您生成的订阅池(订阅 #1、订阅 #2 等)中第一个尚未使用的订阅进行订阅。只需确保您的订阅池中的订阅数量大于您可以拥有的同一设备上的用户数量。
这不是一种简单的方法,而是一种为您的情况找到解决方法的作弊方法。
于 2013-04-30T05:25:28.670 回答
1
目前 google IAB 在一台设备上仅支持一个帐户(设备上的主要 gmail 帐户)。但从 Android 4.2 开始,多用户功能可用,谷歌正在努力为 IAB 提供相同的支持。
于 2013-05-01T04:23:03.603 回答