应用内购买 - 订阅 - 不基于苹果ID

4
我了解如果用户使用应用内购买购买物品,则应在用户拥有的所有设备上(基于登录的Apple ID)反映出来。
但是在我的情况下,我需要使用“我们自己的用户名而不是Apple ID”来处理它。也就是说,如果用户在多个设备上登录到我们的应用程序,我们需要全部处理订阅。
仅为澄清起见,即使用户使用相同的Apple ID在两个设备上登录,但在我们的应用程序中使用不同的用户名,仅实际购买我们的订阅的用户名应获得扩展访问权限。
我认为非续订订阅是我们需要的,但在阅读一些内容后,我认为这种订阅应在同一Apple ID注册的所有设备上反映出来。
因此,如果有人能帮助我选择适合此场景的应用内购买类型,那将是很好的。
感谢任何帮助。谢谢。

我想要实现同样类型的应用内购买。那么,你最终使用了哪种类型?是可消耗的吗?提前感谢。 - Akbari Dipali
1个回答

2
首选的应用内购买类型是非消耗性。在这种情况下,用户不必一遍又一遍地购买产品。关于您自己的用户名的问题,您可以在本地服务器中维护单个用户的购买记录。为此,您可以从苹果应用内购买服务器获得每笔成功交易的交易收据时,通过验证交易收据时将收据以 base64 编码格式发送到本地服务器。在发送收据到本地服务器时,还需将用户的会话 ID 发送到本地服务器。如果收据验证成功,则本地服务器将在本地数据库中存储购买信息。如果用户在第二个设备上登录,您的本地服务器也会知道该用户已购买了多少物品,并且您可以在用户登录的所有设备中同步数据。

谢谢Gyanendra。但是我需要让用户在1年或更长时间后重新购买订阅。关于最后订阅日期和所有其他事项,我可以在自己的服务器上处理。如果我更改用户(但不更改AppStore中的AppleID),我希望能够购买另一个订阅。当然,同一用户不应该支付两次,但我可以通过检查其服务器上的订阅状态来防止这种情况。所以我应该选择消耗品...是吗? - Deepukjayan
所以我基本上理解它是这样的... 如果我要使用我的userInfo实现一次性订阅,我应该选择非消耗品;如果它是基于我的userInfo的非自动续订的基于时间的订阅,我应该选择消耗品... 这样用户就可以一遍又一遍地购买。对吗? - Deepukjayan
当然,如果您希望用户在一年后继续订阅,则应选择可消耗性。如果您更改了用户但未更改Appstore中的AppleID,则用户仍可以免费订阅服务(如果服务仍在订阅期内)。因此,对于新用户,如果用户在Appstore中输入未订阅您服务的不同AppleID,则可以获得新的订阅。 - Gyanendra
是的,您对可消耗和非可消耗产品的理解是清晰的。 - Gyanendra
我面临着非常相似的情况,我也订阅了一年,但我认为购买应该是一个非续订的订阅。为什么你建议使用可消耗品?将用户帐户与购买链接而不是Apple ID是否正确? - DrCachetes
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接