Android 单个设备中有多个用户的应用程序-Inapp计费订阅

Android 单个设备中有多个用户的应用程序-Inapp计费订阅,android,in-app-purchase,Android,In App Purchase,我正在使用Inapp Billing v3开发一个具有订阅功能的应用程序。有登录机制来访问该应用程序。如果用户“X”订阅某项功能并注销。如果用户“Y”登录到同一台设备上的应用程序,并且用户试图订阅,Google play会告诉用户该产品已经购买。订阅是否基于设备中同步的帐户,而不是基于登录到应用程序的用户?如果是,如何实现我的场景 Google Play应用内计费订阅绑定到Google Play帐户。因此,只要谷歌帐户没有更改,订阅就被认为对该帐户有效,您不能再购买一次 如果你想用你自己的账户取

我正在使用Inapp Billing v3开发一个具有订阅功能的应用程序。有登录机制来访问该应用程序。如果用户“X”订阅某项功能并注销。如果用户“Y”登录到同一台设备上的应用程序,并且用户试图订阅,Google play会告诉用户该产品已经购买。订阅是否基于设备中同步的帐户,而不是基于登录到应用程序的用户?如果是,如何实现我的场景

Google Play应用内计费订阅绑定到Google Play帐户。因此,只要谷歌帐户没有更改,订阅就被认为对该帐户有效,您不能再购买一次

如果你想用你自己的账户取代谷歌账户系统,你需要“欺骗”谷歌游戏。您可以做的是创建几个不同的应用内计费订阅(如订阅1、订阅2等)的池。订阅时,您将自己的登录名作为附加参数传递到
developerPayload
字段中

现在,当您枚举所有可用订阅时,在
developerPayload
字段中检查是否有当前用户帐户的订阅。如果没有,那么您认为当前用户没有订阅,并且允许使用您生成的订阅池(订阅1、订阅2等)中的第一个尚未使用的订阅。只需确保池中的订阅数大于同一设备上的用户数即可


这不是一个简单的方法,而是一个骗局,为你的情况找到解决办法。

目前谷歌IAB在一台设备上只支持一个帐户(设备上的主要gmail帐户)。但安卓4.2提供了多用户功能,谷歌正致力于为IAB提供同样的支持。

在这种情况下,钱将从主要用户的帐户中扣除,任何用户都不会接受为其他用户支付的费用。想一想,你找到解决这个问题的方法了吗?我的应用程序也面临着同样的问题。四年后,在牛轧糖上,情况仍然如此吗?不确定,但现在游戏商店应用程序用户可以更改gmail帐户,并基于此用户帐户工作(甚至建议基于帐户历史)。