【问题标题】:app rejected by app store for non consumable product应用程序因非消耗品而被应用商店拒绝
【发布时间】:2012-07-23 12:15:48
【问题描述】:

我们发现,虽然您的应用提供可恢复的应用内购买,但它不包括允许用户恢复之前购买的应用内购买所需的“恢复”功能,如指定的那样在应用内购买编程指南的恢复交易部分:

"...如果您的应用程序支持必须可恢复的产品类型,您必须包含一个允许用户恢复这些购买的界面。此界面允许用户将产品添加到其他设备,或者,如果原始设备是擦除,以恢复原始设备上的事务。”

要恢复以前购买的应用内购买产品,最好提供一个“恢复”按钮并在用户点击“恢复”按钮时启动恢复过程。

有关恢复交易和验证商店收据的更多信息,请参阅应用内购买编程指南。

我用过这些恢复方法:

- (void) restoreTransaction: (SKPaymentTransaction *)transaction {
    [self recordTransaction: transaction]; 
    [self provideContent: transaction.originalTransaction.payment.productIdentifier];
    [[SKPaymentQueue defaultQueue] finishTransaction: transaction]; 
}

- (void)paymentQueue:(SKPaymentQueue *)queue restoreCompletedTransactionsFailedWithError:(NSError *)error;

请任何人告诉我我的界面中缺少什么?

提前致谢。

【问题讨论】:

  • 你真的有一个“恢复”按钮来调用这些方法吗?

标签: iphone in-app-purchase appstore-approval


【解决方案1】:

您需要添加一个恢复购买按钮,这意味着您需要为用户提供一种方法来恢复他们已购买的物品。

【讨论】:

  • 感谢您的回复,我在 UI 上创建了一个恢复按钮并在按钮操作上调用 restoreCompletedTransactions 方法,我还实现了 paymentQueueRestoreCompletedTransactionsFinished 委托方法。请建议我这样做就足够了,因为在沙盒测试中,我最终没有调用任何委托方法。
  • 是的,只要(付费)购买恢复正常,这就是您重新提交应用以供批准所需要做的一切。
猜你喜欢
  • 2017-01-28
  • 1970-01-01
  • 2017-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多