2

我有一个名为“专业版”的非消耗性 IAP。我给买家一些额外的积分和一些访问权限。

他们第一次购买时没有问题。它给出了分数并消除了限制。

但是当他们再次尝试购买时,它会说“您已经购买了这个项目,点击确定再次下载它”,然后它会到达 SKPaymentTransactionStatePurchased 并再次给出积分。

我尝试放置一个钥匙串,这样它只会为一个设备提供一次,但如果有人拿另一个设备并使用他们购买游戏的帐户登录,他们将再次获得积分。

有什么想法可以解决这个问题吗?我的意思是我应该改变他们拿分的地方(它在 validateReceiptForTransaction 成功后给出分数)?

谢谢你们

4

1 回答 1

0

根据应用内购买指南 ( https://developer.apple.com/in-app-purchase/In-App-Purchase-Guidelines.pdf ),您必须为您的非消耗性 IAP 提供恢复方法。

所以,对于你的问题:

如果有人使用另一台设备并使用他们购买游戏的帐户登录

当用户尝试登录时进行恢复。

您将能够知道用户是否购买了您的 IAP。

我认为您必须检查用户是否进行了购买,然后允许或不允许他购买您的非消耗品。

于 2013-05-15T09:23:15.733 回答