2

在全新的应用安装中,当我尝试重新购买某个项目以重新下载它时,我的应用会向 Store Kit 发送购买请求。

然后我得到SKPaymentTransactionStatePurchasing,Store Kit 提示用户确认购买。

然后 Store Kit 在 iOS 7 上响应此消息:“您已经购买了此应用内购买,但尚未下载。 ”。

然后,Store Kit 失败SKPaymentTransactionStateFailed并出现错误

以前 StoreKit 只会让用户重新下载内容。但现在它失败了,错误代码为 2“无法连接到 iTunes Store ”。如果我进行完全还原,则 Store Kit 允许下载内容,但此特定项​​目仍然失败。另请注意,测试设备具有 WiFi 和稳定的互联网连接,并且 StoreKit 能够解析该商品已被购买。所以这个错误是假的。

这是 iOS 7 的新变化吗?如何让用户重新下载单个项目而不强制重新下载所有项目?

根据此技术说明,如果有未完成的购买交易,则会出现问题。我三重检查了我调用完成事务,它发生在我收到错误之后。所以交易确实被关闭了。

4

5 回答 5

1

您在支付队列中有一些未完成的交易。要完成它们,请在 paymentQueue.transactions使用方法添加观察者后立即检查数组addTransactionObserver:。如果它包含一些事务,则按照您在paymentQueue:updatedTransactions:方法中的方式处理它们。如果您不这样做,paymentQueue:updatedTransactions:则不会调用它们,因为当您注册观察者时它们已经在队列中。

finishTransaction:顺便说一句,即使交易失败,也要确保调用所有交易。否则他们将留在支付队列中并导致此问题。

于 2014-04-21T12:54:35.650 回答
0

我通过设置应用程序 -> App Store -> 注销从 App Store 注销测试帐户来解决此问题。然后我从 iTunes Connect 中删除了测试帐户,然后我重新启动了设备。

于 2014-05-30T12:16:50.047 回答
0

我有同样的问题!经过几个小时的检查!我刚刚重新启动了 I pad (iOS7),现在它又开始工作了。

于 2014-01-09T07:27:49.857 回答
0

同样的问题.. 我们在 iOS 7 发布后为我们的应用程序推出了新的更新。我们现在有许多用户抱怨他们要么无法恢复以前的购买。其他用户抱怨他们购买成功,但是 IAP 包没有解锁,没有错误消息。我们在这里有点困惑。

于 2013-12-03T13:36:12.163 回答
-1

我也有类似的情况;通过重新启动我的 iPhone 解决。具体来说,我在 Apple 的服务器上进行了非消耗性购买。将应用程序安装到 iphone5,进行购买。删除应用程序,在另一个版本中重新安装,并在恢复时,ITunesStore 服务器没有响应我的托管联系人产品标识符。再次购买该项目会产生“已购买”错误,没有下载选项。我找到了这个网站, http: //support.nimblebit.com/customer/portal/articles/672080-problem-making-in-app-purchase-ios-os-x;重新启动我的设备,现在恢复可以识别以前的购买。

于 2013-11-12T17:09:14.910 回答