【问题标题】:How can I confirm whether the in-app purchase actually worked on a Test iTunes Connect user?如何确认应用内购买是否真的对测试 iTunes Connect 用户有效?
【发布时间】:2013-10-27 02:58:20
【问题描述】:

我已经设置了一个 iTunes Connect 测试用户并且能够执行应用内购买,部分是通过本指南:http://www.raywenderlich.com/21081/

根据代码,交易已完成。但我想确定一下,所以我想也许我的测试帐户的电子邮件地址收到了确认交易的消息。没有这样的消息,可能是因为它是沙盒模式购买。

如果我的代码出现错误并给我错误的信号,我是否有其他方法可以确认测试购买实际上是由 Apple 的测试服务器处理的?我查看了我的 iTunes Connect 页面,但似乎没有包含该信息的视图。

【问题讨论】:

    标签: ios iphone ios7 in-app-purchase app-store-connect


    【解决方案1】:

    您在这里的主要信息来源来自 SKPaymentTransactionObserver 协议:

    - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions {
    

    当您收到以 transaction.transactionState == SKPaymentTransactionStatePurchased 回复的交易时,您就知道 Apple 与您的客户之间的一切都很顺利。

    您的代码不会直接调用此方法,除非您对私有 API 进行了一些认真的(并且未经 Apple 批准)修补,否则您可以相信您在此处收到的消息来自 Apple,并且是合法的。通过 appStore 推动了数十亿美元,你可以打赌他们也已经从他们的角度解决了这段代码中的错误。

    您不会收到沙盒测试帐户的任何电子邮件确认。您所能做的就是适当地处理委托方法并继续前进。

    【讨论】:

      【解决方案2】:

      当您收到 SKPaymentTransactionStatePurchased 状态时,表示交易已成功完成。

      在沙盒模式下,Apple 不会向任何人发送任何电子邮件,但是当您在 Live(生产)环境中执行此操作时,Apple 会发送一封包含已购买产品详细信息的电子邮件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-04-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-10
        • 2019-05-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多