我正在使用iOS应用,用户必须注册/登录我的应用帐户。为了能够使用我的服务,我希望用户通过应用内购买(在我的情况下为自动续订)付款。然后,这会将他们的IAP与他们(由我们创建)的帐户绑定在一起,以便可以在任何其他iOS设备上使用。
情况1: 例如,如果在电话A上为某个帐户购买了订阅,则在使用相同帐户登录电话B时,不应使用户再次付款。
案例2: 或者,如果在电话上为帐户A购买了订阅,则在同一电话上注册帐户B时,应使用户为帐户B付费。
基本上,我希望将应用内购买绑定到我的帐户(而不是苹果设备/ Apple帐户,这是我理解的方式)。
我知道他们是收据,可能是回答我的问题的一部分。或者,如果这是对应用内购买的限制,那么还有什么其他方法可以做到(除了使用Apple的IAP之外)
答案 0 :(得分:1)
问题标题的答案:
购买后,应用程序中会收到一个更新,该更新将在下次启动时包含transaction_id(用于续订的original_transaction_id),并应将此交易ID与您的应用程序用户ID相关联。
情况1: Apple提供了一个在应用中“恢复购买”的选项。由于使用了相同的帐户,因此您的应用程序服务器将已经知道用户已经付款,并且该应用程序不应提示用户再次付款。但是,为了在手机B上接收即将到来的续订更新,您必须“还原购买的商品”,这将使Apple也可以在此设备上链接以前的购买商品。恢复完成后,用户购买的收据将在设备上可用,并且应基于收据的内容验证采取所有后续操作。
这里的几点:
以上情况完全基于以下假设:用户在两台设备上都使用相同的Apple ID(相同的应用程序用户ID无关紧要)。
情况2:我不确定这是否可行。由于是同一台设备,因此用户使用相同的AppleId(除非他在App Store中注销并更改Apple ID),否则Apple将限制回购。充其量您可能会限制帐户B的订阅内容,但是如果您的应用程序允许在同一设备用例(例如Instagram)上使用多个帐户,那么我不确定是否有相同的规定。
我针对我使用的音乐服务应用测试了相同的场景。拥有有效的订阅,已注销并使用其他电子邮件(应用程序)注册,但是由于我已经购买过,因此拒绝了购买。但是,它允许我升级和降级选项。我没有选择对其进行测试,以免搞乱我的帐户。
P.S:还有很多其他警告/陷阱需要注意。其中一些:
有用的链接: