pem文件是服务器向苹果服务器作推送时候须要的文件,主要是作服务器的小伙伴们要用,下面介绍一下pem文件的生成。由于这边须要客户端去生成。git
打开Keychain Access,在Certificates里面找到咱们须要的推送证书。分别将certificate和private key导出获得.p12文件。例如:Apple Development Push Services > Export “Apple Development Push Services ID123”,保存为 apns-dev-cert.p12。对“Private Key”作一样操做,保存为 apns-dev-key.p12 文件。github
须要经过终端命令将这些文件转换为PEM格式:openssl pkcs12 -clcerts -nokeys -out apns-dev-cert.pem -in apns-dev-cert.p12openssl pkcs12 -nocerts -out apns-dev-key.pem -in apns-dev-key.p12此处要求输入一个密码,如输入123456.shell
移除密码(上面的123456)openssl rsa -in apns-dev-key.pem -out apns-dev-key.pem服务器
最后,你须要将键和许可文件合成为apns-dev.pem文件,此文件在链接到APNS时须要使用:cat apns-dev-cert.pem apns-dev-key.pem > apns-dev.pemapp
一样 Distribution Certificate 的pem文件生成方式同样。 openssl pkcs12 -clcerts -nokeys -out apns-dis-cert.pem -in apns-dis-cert.p12 openssl pkcs12 -nocerts -out apns-dis-key.pem -in apns-dis-key.p12 openssl rsa -in apns-dis-key.pem -out apns-dis-key.pem cat apns-dis-cert.pem apns-dis-key.pem > apns-dis.pemssl
上传信鸽/后台 推送文件是 apns-dev.pem和apns-dis.pem;开发
若是公司开发的app量够多的时候,你可能也会厌烦敲上面的代码,自动化,这是咱们对程序化的工做有效的解决方案,下面提供一段shell脚本,是用expect录制的。 https://github.com/weskhen/apnsPemShellget