Apple推送通知,如何正确导出我的证书?

zkw*_*ntz 16 iphone openssl push certificate

我似乎无法弄清楚如何正确导出我的证书,以便在我的iOS应用程序中使用推送通知.我正在使用以下证书,从iOS Provisioning Portal的" 证书"部分下载.

在此输入图像描述

然后我按照我在网上发现的许多教程中的一个,顺便说一下,将我的证书变成.pem格式用于ruby-apns.

首先我从钥匙串中导出它:

在此输入图像描述

在我给它命名和密码后,我在终端*中执行以下命令:

openssl pkcs12 -in cert.p12 -out apple_push_notification_dev.pem -nodes -clcerts
Run Code Online (Sandbox Code Playgroud)

*注意:这不是我尝试过的唯一方法,只是最新的,我也尝试过以下网址的说明:

这些解决方案中没有一个有效.当我尝试使用ruby-apns时,我坐在这里从控制台查看以下错误:

read finished A: sslv3 alert certificate unknown (OpenSSL::SSL::SSLError)
Run Code Online (Sandbox Code Playgroud)

基本上我发现的所有其他服务器解决方案都告诉我我的证书不正确或者它也存在问题.

我做错了吗?

===============================

隔夜礼貌Bump Stealth编辑

所以我昨晚在墙上撞了我的头,实际上遇到了Apple自己的指示.它几乎完全相同,我尝试了相同的曲调.不过,以下是此链接的最新尝试:

openssl pkcs12 -in CertificateName.p12 -out CertificateName.pem -nodes
Run Code Online (Sandbox Code Playgroud)

App*_*ect 25

(1)首先,您需要设置应用ID的配置以启用推送通知服务.您可以签入图片. 在此输入图像描述

(2)然后您可以在您的机器的钥匙串中安装证书并安装. 在此输入图像描述

(3)这里导出两个文件.而不是你只需要导出私钥,如屏幕截图所示. 在此输入图像描述

(4)现在您可以导出私钥并以.p12格式存储您想要的任何名称,如下面的屏幕截图所示. 在此输入图像描述

(5)然后按照你上面提到的所有其他步骤进行操作.

openssl pkcs12 -in CertificateName.p12 -out CertificateName.pem -nodes
Run Code Online (Sandbox Code Playgroud)

如果您仍有任何疑问或者您无法解决,请告诉我,然后告诉我.

  • 球人.这仍然不适合我:| (2认同)