如何制作与内部用户相关的自动续订订阅,而不是Apple ID



我似乎已经撞到了砖墙,但是从本质上讲,我在应用程序中拥有的是用户和创建帐户页面的登录页面。当用户打开我的应用程序并创建一个新帐户时,它们的信息将存储在Firebase Server(Bass)上。

现在我的问题是我如何进行制作,以便对于每个通过我的应用程序创建帐户的用户,他们都可以选择订阅我的应用程序,而此订阅仅对他们的帐户有效(不是Apple ID)。目前,如果用户与我创建一个帐户并继续说订阅服务,那么一切都可以访问应用程序的完整功能。

但是,当他们注销并创建另一个帐户时,因为目前订阅与用户的 Apple ID 相关,另一个帐户或任何帐户都将具有完整的访问权限到申请。不仅是购买的。

所以我想我的问题是我如何进行它,以便每次订阅/购买都与我的内部用户绑定,而不是在设备上登录的 Apple ID 。(本质上是 Pandora Spotify ,您对应用程序的访问取决于您的帐户,而不是您的Apple ID)

根据Apple文档:

坚持使用自己的服务器 将收据的副本与某种凭据或标识符一起发送到您的服务器,以便您可以跟踪哪些收据属于特定用户。例如,让用户使用电子邮件或用户名以及密码识别自己的服务器。不要使用UIDEVICE的标识符forvendor属性,您无法使用它来识别和还原同一用户在其他设备上进行的购买,因为不同的设备对此属性具有不同的值。

我将如何使用Firebase进行类似的事情?

当交易在iTunes上完成时,您将获得该购买的交易收据。该收据包含有关购买的各种信息。您可以将此收据存储在数据库中。在此收据中,还有一个名为" Original_transaciton_identifier(OTI)"的字段,该标识符表示从该Apple ID制作的独特购买ID。将此独特的标识符存储在您的数据库中,以针对先发送它的用户ID。

现在,如果用户ID A向您发送OTI 11,请将其存储在DB中,将用户B登录并试图还原购买时,将更新的收据发送到您的服务器,请从此中取出OTI收据,将其与存储在DB中的otis进行比较,如果您没有找到任何东西,则意味着它是新购买的,否则您知道此购买的属于谁,您可以将其传达给用户B,以链接到某些链接其他用户,尝试使用新的iTunes帐户进行购买。

最新更新