2011-03-07 556 views
12

我试图使用测试帐户测试我的应用购买。我第一次尝试购买应用程序中的自动续订订阅时,一切顺利,没有错误,并且事务完成,并且事务状态更新为“SKPaymentTransactionStatePurchased”。但是,当我测试用户试图再次购买订阅的情况时,我不断收到上述错误。即使商店套件框架显示一个对话框,指出用户已订阅,但我的观察者将该事务视为状态为失败(SKPaymentTransactionStateFailed)。错误域= SKErrorDomain代码= 2“无法连接到iTunes Store”UserInfo = 0x6083900 {NSLocalizedDescription =无法连接到iTunes Store}

storekit文档中明确提到 “如果用户试图购买他们已经购买的非易耗品或可再生订购,那么您的应用程序将收到该项目的常规交易,而不是恢复交易。但是,用户不是对该产品再次收取费用,您的应用程序应将这些交易视为与原始交易的交易相同。“ 在我的情况下,当我再次购买时,我不断收到交易状态为“失败”。

任何想法?这是在沙箱测试环境中。

+0

上周我有同样的问题。但现在它适用于我的应用程序。 – AlexVogel 2011-03-08 11:01:51

回答

3

如果你从App Store应用程序注销,似乎当你再次购买是工作。但是,如果您的用户尝试购买两次相同的产品,问题仍然存在。

3

这是预期的行为。您仍然收到一笔交易,它只是将其标记为失败状态,因为它不代表新的成功购买交易。重新购买他们已经订阅的订阅(大概是为了在全新安装后恢复购买)并不是您应该鼓励用户采取的旅程,而应该指向恢复购买功能。

可以说,你可能想每次询问你的失败购买,看看这是用户想要做什么,但是你必须做一些相当混乱的尝试和区分哪些是真的失败和哪一个是错误的恢复。但我会说,拥有一个大的“恢复”按钮并指导人们更容易。

相关问题