我想知道何时使用沙盒APNS(gateway.sandbox.push.apple.com),何时使用生产APNS(gateway.push.apple.com)发送推送通知。
当前,我们将生产APNS用于
(本地(调试)版本)。这是正确的吗?
问题在于,尽管我们正确接收到有关App Store版本的推送通知,但没有收到有关testflight和本地版本的推送通知。
我们对所有版本使用相同的生产证书。它是否正确?
答案 0 :(得分:0)
沙盒,用于使用 iOS开发证书(默认为调试)
签名的应用使用 iOS发行证书签名的应用的生产(发布默认设置,包括testFlight)
请注意,如果您没有使用不同版本或内部版本号的完整单独上传文件,则testFlight内部版本与AppStore内部版本完全相同。
答案 1 :(得分:0)
推荐的方法:首先将请求发送到生产APNS,如果请求失败,则将其发送到沙盒APNS。并始终做到这一点,无一例外。
原因:实际上,生产APNS将正确处理所有推送通知的99.9%。开发人员发送的是0.09%,处理速度会稍慢(拒绝一次,然后一次成功),而生产APNS应该成功的0.01%,但是由于某种原因不会(而不是一次失败,您尝试两次但失败两次)。
最大的优点是它可以正常工作。您不必配置服务器将推送通知发送到哪里,也不必配置客户端告诉服务器将推送通知发送到哪里。您只需发送推送即可使用。