iOS iAP 托管内容下载不工作
iOS iAP Hosted content download not working
我的应用程序有几个非消耗性 iAP。该应用程序的第一个版本在应用程序包中包含了适当的内容,因此 iAP 只是为了解锁可以访问内容的区域。
我正在开发该应用程序的第二个版本,这次将在用户购买时下载内容。
我创建了新版本的 iAP(重要:相同 iAP 的新版本,但这次添加 "Hosted Content",它们不是全新的 iAP),托管内容上传成功,iAP 状态为 "Ready to Submit".
一切正常,内容已下载到设备,直到 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.
我刚刚测试过,我可以确认错误已经消失。
我的应用程序有几个非消耗性 iAP。该应用程序的第一个版本在应用程序包中包含了适当的内容,因此 iAP 只是为了解锁可以访问内容的区域。
我正在开发该应用程序的第二个版本,这次将在用户购买时下载内容。
我创建了新版本的 iAP(重要:相同 iAP 的新版本,但这次添加 "Hosted Content",它们不是全新的 iAP),托管内容上传成功,iAP 状态为 "Ready to Submit".
一切正常,内容已下载到设备,直到 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.
我刚刚测试过,我可以确认错误已经消失。