无法在分发中获取推送通知,但仅在开发中

时间:2013-05-02 20:01:28

标签: ios push-notification ssl-certificate

我遇到推送通知问题。我最近将我的应用程序上传到appstore。当我在设备上测试应用程序时,我收到了推送通知。但是,当我现在从应用程序商店下载我的应用程序时,我不再收到它们了。

我遵循了以下tutorial

这就是我所做的 我在钥匙串中要求提供证书申请。这为我生成了一个.CSR文件。现在在iTunes中我创建了一个APP ID,我启用了推送通知服务。

在这里,我使用相同的.CSR来创建开发和生产证书。 下一步是我下载了生产证书并使用以下命令创建了一个CK.PEM文件。

$ openssl x509 -in aps_production.cer -inform der 
    -out mosCert.pem

$ openssl pkcs12 -nocerts -out mosKey.pem -in mosKey.p12
Enter Import Password: 
MAC verified OK
Enter PEM pass phrase: 
Verifying - Enter PEM pass phrase:

这是我从钥匙串中导出的mosKey.p12。

$ cat PushChatCert.pem PushChatKey.pem > ck.pem

最后在我的网络服务代码中,我已经说过应该使用这个ck.pem来发送推送。

但是出于某种原因,当我从应用程序商店下载应用程序时,我没有收到推送通知。

有人可以帮我吗?

修改

这就是我对我的项目进行代码签名的方式

enter image description here

2 个答案:

答案 0 :(得分:0)

我自己也经历过这样的情况,在我的情况下,应用程序没有收到任何推送通知,因为它是使用错误的包标识符意外构建的。

答案 1 :(得分:0)

Sandbox:gateway.sandbox.push.apple.com,端口2195.(用于开发)

生产:gateway.push.apple.com,端口2195.(发布时)