Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 您需要将APNS证书添加到本地密钥链吗?_Ios_Apple Push Notifications_Keychain - Fatal编程技术网

Ios 您需要将APNS证书添加到本地密钥链吗?

Ios 您需要将APNS证书添加到本地密钥链吗?,ios,apple-push-notifications,keychain,Ios,Apple Push Notifications,Keychain,为推送通知启用iOS应用程序时,您需要创建一个沙盒SSL证书,以供服务器用于与APN通信。该沙盒证书是否也需要添加到开发计算机的密钥链中?SSL证书与相应的开发/分发证书关联,并且对每个appID都是唯一的 您不需要在开发计算机上安装SSL证书 更多信息: 关于APN的所有证书内容仅由与Apple推送新闻服务器通信的服务器使用 以下是我创建服务器与Apple服务器通信所需文件的“步骤”: 从Keychain->BASENAME.csr创建证书签名请求 从Keychain导出私钥->BASENAM

为推送通知启用iOS应用程序时,您需要创建一个沙盒SSL证书,以供服务器用于与APN通信。该沙盒证书是否也需要添加到开发计算机的密钥链中?

SSL证书与相应的开发/分发证书关联,并且对每个appID都是唯一的

您不需要在开发计算机上安装SSL证书

更多信息:

关于APN的所有证书内容仅由与Apple推送新闻服务器通信的服务器使用

以下是我创建服务器与Apple服务器通信所需文件的“步骤”:

  • 从Keychain->BASENAME.csr创建证书签名请求
  • 从Keychain导出私钥->BASENAME privateKey.p12
  • 在Apple Developer portal中,创建2个证书->BASENAME dev.cer和BASENAME prod.cer
  • --使用
    openssl
    命令

  • 将私钥.p12文件转换为.pem文件
  • 将dev.cer文件转换为.pem文件->BASENAME dev.pem
  • --使用
    cat
    命令

  • 将dev证书文件和私钥文件合并成一个.pem文件->BASENAME dev certKey.pem
  • --使用
    openssl
    命令

  • 将prod.cer文件转换为.pem文件->BASENAME prod.pem
  • --使用
    cat
    命令

  • 将prod证书文件和私钥文件合并为一个.pem文件->BASENAME prod certKey.pem
  • 然后,您必须使用“*cetKey.pem”文件与Apple server建立SSL连接(在开发过程中使用“*dev certKey.pem”使用沙盒式Apple APNS服务器,在生产应用程序中使用“*prod certKey.pem”与生产Apple APNS服务器通信)

    然后,您可以测试与苹果生产(最终)APNS服务器的连接:

    openssl s_客户端-connect gateway.push.apple.com:2195-cert“*prod.pem”-key“privateKey.pem”

    或到沙盒(dev)Apple APNS服务器:


    openssl s_client-connect gateway.sandbox.push.apple.com:2195-cert“*dev.pem”-key“privateKey.pem”

    谢谢。我以前看过那个教程,但肯定错过了上面写着“您不必将证书添加到您的密钥链”的地方。我现在看到了哈。