我有我自己的系统用户管理模块(登录和注册)。我有一个iOS应用程序,用户可以购买通过互联网应用程序的内容溢价访问。我在其他平台上也有这个应用程序;网络和android。他们也可以从其他平台购买这样的访问权限。我不希望我的用户已经在其他平台购买了相同的访问权限。即如果他/她在iOS中购买了访问权限,那么当他/她切换到安卓系统时,应该允许他/她使用高级访问。为此,我需要将购买的IAP关联到我自己的用户管理模块。我如何做到这一点呢?
发布于 2019-01-15 03:30:23
您需要为每个用户提供跨平台ID,并将交易(无论来源如何)附加到该用户ID。对于每个收据类型(Apple、Google等)您需要确保适当地刷新它们,以保持订阅状态的准确性。
由于用户只能从他们注册的设备上取消订阅(即不能从Android上取消Apple订阅),您应该注意注册来源,并指示他们在那里管理他们的订阅。
取而代之的是,使用您的服务器作为还原的真实来源。
或者,如果您不想自己构建和管理它,可以考虑使用托管解决方案,例如RevenueCat,它可以处理所有这些开箱即用的功能。(免责声明:我在那里工作)
发布于 2019-01-09 20:30:09
你需要为你的应用定义一个配置设置。这将包含购买模块的详细信息和有效性等。当您打开应用程序时(或定期检查),从服务器获取此设置,并基于此设置配置您的模块。
当用户购买时,您需要更新该特定用户的配置设置。通过这种方式,您可以处理所有平台的购买,而不需要任何额外的逻辑。
https://stackoverflow.com/questions/54110149
复制相似问题