Mad*_*huP 8 iphone in-app-purchase ios
我有一个恢复按钮.问题是,如果他们没有"完成恢复,并且他们尝试购买物品,并且他们已经购买了该物品,我需要告诉他们他们已经购买了它而不进行购买.所以我需要一种方法来知道他们购买了哪些物品,而不进行恢复.我试图在用户试图购买时首先进行恢复,但苹果拒绝了我的应用.他们表示,在显示"确认应用程序内购买"对话框之前,无法进行还原.
请帮我找到正确的方法.
提前致谢.
您可以将这些数据保存在NSUserDefaults中.而且您不需要显示警告说已经购买了这些物品.如果它的非消费品苹果显示警告说他们已经购买了该物品!
编辑:
1)您需要在视图中添加3个按钮
如果您在应用中支持应用内购买,则需要为用户提供还原选项.否则Apple将拒绝您的应用.
2)如果用户按下购买按钮,请不要检查用户是否已经购买了您的应用程序.因为Apple不会向用户收取两次相同的非消费品.所以只需查看您的购买代码,如果用户已购买它,Apple的StoreKit框架将调用它的委托方法
- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions
Run Code Online (Sandbox Code Playgroud)
同
SKPaymentTransactionStatePurchased
交易状态.所以你可以给他登录屏幕.
3)如果用户按下恢复按钮,则只需执行恢复代码
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
Run Code Online (Sandbox Code Playgroud)
并且在第二步中它将调用具有相同事务状态的委托方法.因此,您可以向用户显示登录页面.
4)如果用户按下演示版按钮,请向他演示演示版.
5)如果用户购买了您的应用程序,将其删除,如果他重新安装,请将其视为新用户.向他展示这3个按钮,用户可以恢复购买,然后您可以向他显示登录页面.
6)如果您确实需要跟踪是否在确切的设备上购买应用程序,那么您可以使用钥匙串存储您的数据,因为即使应用程序已卸载或已删除,也不会删除钥匙串项目.这个Api会帮助很多链接,看看
要么
您可以参考Apple 关于Keychain数据的文档
| 归档时间: |
|
| 查看次数: |
1186 次 |
| 最近记录: |