我为我的移动应用程序开发了一个Web API使用它。
此API是使用Django开发的,我使用django-push-notifications lib来处理推送通知。
推送通知对所有设备都运行良好,直到它停止为少数人工作,这在某些时候起作用,没有明显的原因。
我已经调试了服务器,我可以看到发送到APNS的消息和正确的格式。还审查了证书,一切正常。我正在使用生产证书发送到适当的服务器。 我确信这不是证书问题,因为其他一些手机会收到通知。
我现在应该从哪里开始寻找问题?
感谢。
答案 0 :(得分:3)
他们不可靠!即使APNS服务器接受了推送通知,也无法保证实际发送推送通知。 就您的服务器而言,推送通知是偶然的;在将通知发送到APNS后,无法确定通知的状态。交货时间也可能有所不同,从几秒到半小时。
此外,用户的iPhone可能无法始终接收推送通知。它们可能位于WiFi网络上,因为所需的端口被阻止,因此无法与APNS建立连接。或者手机可以关闭。
答案 1 :(得分:1)
您确定那些某些设备没有应用的开发版本吗?
尝试生成apn开发证书和apn生产证书的组合p12证书,而不是单独调用gateway.push.apple.com和gateway.sandbox.push.apple.com。