首页 > 解决方案 > 我是否需要为应用内购买提供恢复购买按钮?或者我可以使用服务器自己处理它吗?

问题描述

我做了研究,发现如果你的应用没有恢复按钮,苹果会拒绝它。

我试过这段代码来恢复购买:

SKPaymentQueue.default().restoreCompletedTransactions()

我面临的问题是用户可能在同一设备上登录不同的帐户。因此,当我恢复购买时,它不一定会查看当前用户,而是查看整个设备。

我的想法是使用服务器来存储用户是否进行了购买。所以现在我有了用户特定的信息,不需要恢复按钮,因为我可以在他们使用新设备时重新更新他们的购买。(同样重要的是要注意我的应用程序正在使用非消耗性购买。)这会工作吗?更重要的是,我的应用会被苹果接受吗?

标签: xcodein-app-purchaseapple-developer

解决方案


3.1.1 应用内购买: “通过应用内购买购买的任何积分或游戏内货币可能不会过期,您应确保您有任何可恢复的应用内购买的恢复机制。” https://developer.apple.com/app-store/review/guidelines/

您需要在应用程序内部有一个恢复机制,这是用户习惯看到的约定。除此之外,如果您遇到问题服务器端,它还可以作为一种救援机制。如果您不包含此内容,您将面临拒绝。


推荐阅读