我一直在使用临时分发版测试我的 iPad 应用程序。
在我们的服务器(运行 Windows Server 2008)上,APNS 警报正常。
在 ec2(也运行 Windows Server 2008)上,它们永远不会到达。
两个临时版本之间的唯一区别是它们指向的服务器。两者具有相同的代码签名设置。
我按照相同的步骤在两台服务器上导入证书,据我所知,两台服务器上的证书完全相同。
我还打开了端口 5223、2196、2195 和 443 并允许 17.0.0.0/8 地址 block :
我什至尝试关闭防火墙,但没有成功,而且我仍然不明白为什么它在一个防火墙上有效,而在另一个防火墙上无效。
有人有什么想法吗?
-编辑-
我正在使用 MoonAPNS 处理通过 C#/ASP.Net 网络服务发送的通知。不知道这是否有任何区别。
最佳答案
EC2 的推送通知效果很好。在几个应用程序中使用/实现它。这里有几件事要检查
连接到 APN 服务器时是否出现错误?尝试使用
$ telnet gateway.push.apple.com 2195
。它有效吗?如果不是,您可能需要更改安全组/打开必要的端口如果服务器显示消息已成功发送,但您没有在应用程序中收到它,请确保检查您正在使用的 mobileprovision 和 pem 文件
既然你提到 telnet 工作并且你已经检查了 pem 和 mobileprovisions,还有一些其他的事情要检查
当 MoonAPNS 尝试连接到 APN 服务器时,您是否遇到任何错误?
如果没有返回任何错误,您是否检查过设备 token 是否存储在您的数据库中并且它是您测试设备的 token ?
如果消息发送正常,您是否 ping 反馈服务?他们是否针对特定设备 token (即您的设备)返回错误?
关于ios - 移动到 Amazon ec2 服务器后推送通知停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16085475/