我的应用有几个非消耗性 iAP。该应用程序的第一个版本在应用程序包中包含适当的内容,因此 iAP 只是解锁可以访问内容的区域。
我正在开发该应用程序的第二个版本,这次内容将在用户购买时下载。
我创建了新版本的 iAP(重要提示:相同 iAP 的新版本,但这次添加“托管内容”,它们不是全新的 iAP),托管内容已成功上传,iAP 状态为“准备提交” ”。
一切正常,内容已下载到设备,直到 1 周前,当我出于某种原因进行测试时,购买成功但内容未下载。
在创建 SKPayment
对象时使用断点,我可以看到它有可下载的内容:
(lldb) po product.downloadable
YES
即使版本与 iTunes Connect 中的相同:
(lldb) po product.downloadContentVersion
1.1
但是在处理-paymentQueue:updatedTransactions:
内部的交易时,它没有SKDownload
对象:
(lldb) po transaction.transactionState
SKPaymentTransactionStatePurchased
(lldb) po transaction.downloads
<__NSArrayM 0x13e1d38a0>(
)
我使用的是 TestFlight Sandbox 用户,它在执行购买时显示 [Environment: Sandbox],所以我知道我不在生产环境中。
发生了什么事?为什么它突然停止工作?苹果最近改变了什么吗?这真让我抓狂。 谢谢,任何帮助表示赞赏。
嗯,我终于有答案了。事实证明,这是来自 Apple 的错误。 我为此请求了技术支持事件,Apple 工程师回复了:
It’s unfortunate that this is a known issue. Until it’s resolved, I can only suggest that you submit a bug report and prepare an external TestFlight build, if the QA team asks for one.
但最好的部分是今天,感谢全能的上帝,同一位工程师回来说:
You should now find that this issue should no longer be happening.
我刚刚进行了测试,可以确认该错误已消失。
关于iOS iAP 托管内容下载不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35421785/
欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://jike.in/) | Powered by Discuz! X3.4 |