当我们从testflight或diawi iOS下载构建时,推送通知不会出现

时间:2014-12-16 10:21:31

标签: ios ios7 ios8 push-notification apple-push-notifications

我已经成功创建了.pem和.p12文件 http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1 教程。  我们使用java作为服务器,所以我也使用此链接导出我的.p12密钥,因为直接导出.p12文件时出错 Cannot send push notifications using Javapns/Javaapns SSL handshake failure

在调试模式下,一切都运行良好。每当我通过xcode安装构建时,我每次都会成功收到推送通知。但是,在testflight或diawi上归档和上传构建版本然后将其安装到设备上后,我没有得到任何推送通知。我成功从apns服务器获取设备令牌。在服务器端调试时,我们发现他们收到的设备令牌并发送通知无效。此响应由apns服务器发送到我们的java服务器。 。我正在使用Xcode 6.0或更高版本,我的应用程序与ios7.0或更高版本兼容。是的,我已经为ios 8和7注册远程通知做了检查。有人遇到过这个问题,因为早先在xcode 5系列中这并没有发生。请帮忙

任何帮助将不胜感激。感谢

3 个答案:

答案 0 :(得分:8)

如果您按照 Ray Wenderlich的教程进行了开发模式,那么问题很可能就是您现在需要为生产模式创建新的.pem文件

因此,您需要执行与使用再次下载的开发证书(即 .p12 -file)所执行的步骤完全相同的步骤>生产证书,你也可以在iOS开发中心获得: enter image description here

以下是您可能已阅读的教程中的引用:

  

如果您已准备好向公众发布应用,则必须这样做   重复此过程以制作Ad Hoc或App Store分发   轮廓。

答案 1 :(得分:3)

1.)检查您存储在服务器上的pem文件是否是使用开发证书或分发证书创建的,对于通过ttestflight工作的推送通知,您需要在分发模式下创建一个pem文件,

2。)还要检查你要传递给的网关是gateway.push.apple.com:2195,而不是沙盒,

3.)通知令牌对于开发和分发配置文件也不同,请检查所有这些场景并查看

答案 2 :(得分:0)

为了推送工作,您必须使用完全相同的AppID来创建APNs证书和配置文件。通配符配置文件不能用于推送通知。这可能是你的问题(使用通配符或TestFlight / diawi只是不同的AppID)?