2

嗨,我现在很困惑,不知道下一步该怎么做。我花了两周的时间让这些推送通知正常工作,当我最终将它们整齐整齐时,我将它放入adhoc分发包中并将服务器配置切换到生产环境,突然没有任何工作,我没有错误消息可以消除。它应该工作,它应该工作,而不是。所以我需要一些帮助,因为我迷路了。推送通知在从沙盒切换后不能在生产环境中工作

可能出现的问题 -

主机配置

真正帮我把它摆在首位的工作是本教程here,托管服务器的Heroku和应用程序使用this宝石写在西纳特拉,如果这不会延续到生产环境,我不会看到请告诉我。要更新环境到生产,我只是改变了使用了哪个键,如下图所示,从gateway.sandbox.push.apple.com到gateway.push.apple.com主机:

server_config.jpg

APNS KEYS

我不认为这是这一点,但我不明白是怎么回事,所以我记录它,但分布重点工作,我相信 - 运行

openssl s_client -connect gateway.push.apple.com:2195 -cert dis_apskey.pem 

在终端得到了日是连接和事务与推送服务器:

openssl_connecting.jpg

我相信这意味着它的工作,虽然我不知道肯定不(见在回答编辑,这并不意味着它的工作)。钥匙在使用此命令提出:

openssl pkcs12 -in aps_distribution.p12 -out dis_apskey.pem -nodes 

从iOS开发门户网站或不管它现在被称为下载的APS发展的私钥和证书分布,导出为的.p12加密文件:

keychain.jpg

虽然,而来自不同的私钥他们也变成极其类似的(所有字符都一样) -

enter image description here

这是正常的吗?因为我做了两个推送服务证书来自同一个CSR,所以我不知道我完全失去了......只是把它扔到那里,因为这些都没有意义了。

代码签名

我相信这是正确的(从我的Xcode项目):

enter image description here

那些对应的证书和移动部署配置文件在我的iOS开发者门户网站,我有重新生成了许多新的,在xcode中刷新它们,再次检查并重新加载到这个东西,我很难相信这是问题的领域。但只是为了确保我发布它,这些是当前的配置文件,是在APS证书发布后制作的。再一次,这对我来说并没有什么意义,是的,我已经阅读了文档,它仍然是希腊语。

MOBILE DEVICE令牌

这一次,我没有看到是问题。我的应用程序使用开发配置文件生成了一个令牌,并且沙箱能够将通知推送给它,并且它的工作非常好!然后,我的应用程序在切换到adhoc配置文件时生成了新的令牌,并且生成环境没有任何功能。我会再说一遍,沙盒上的所有东西都能正常工作,但现在不会。

其他原因?

这就是我能想到的,如果任何人有别的东西请让我知道。我只是想要这个工作,我看不到错误,如果苹果发回他们失败的推动,所以我不知道。它正在开发人员沙箱中工作,现在应该开始工作,这就是我所能想到的。

谢谢。

回答

6

所以经过长达两天的沮丧买了一个长长的问题。什么工作。 Reading

enter image description here

我需要出口这两个项目

enter image description here

随后的.pem转换。

并成功!

编辑:我还应该注意到,在问题中ssl连接到gateway.push.apple.com的图片不是正确的连接,在这里使用新的.pem密钥产生的答案套接字不“关闭“。在关闭之前,您应该能够输入一些内容。

+0

这两个项目是指生产证书或开发和生产证书的公钥和私钥?我一直在做的是选择证书时,它不扩展,我假设包括私钥。 我能够选择开发生产证书并导出到单个.p12,然后转换为.pem。我想知道在使用Parse和Mixpanel等服务时是否应该这样做。 – Brennan