我使用城市飞艇在我的申请推送通知。所以,我需要从苹果开发者门户下载推送SSL证书。下载后,我在钥匙链访问中添加了它。但是没有为证书创建私钥。当我试图右键单击并导出证书时,我无法将其导出为.p12文件,因为保存时禁用了.p12文件扩展名。由于名声不佳,我无法在这里附上截图。
谁能告诉我问题出在哪里。我该怎么做呢?
我使用城市飞艇在我的申请推送通知。所以,我需要从苹果开发者门户下载推送SSL证书。下载后,我在钥匙链访问中添加了它。但是没有为证书创建私钥。当我试图右键单击并导出证书时,我无法将其导出为.p12文件,因为保存时禁用了.p12文件扩展名。由于名声不佳,我无法在这里附上截图。
谁能告诉我问题出在哪里。我该怎么做呢?
当前回答
对我来说,不是在Keychain Access中的主证书行上右键单击并选择Export,而是单击我试图导出的证书旁边的下拉箭头,然后右键单击下面的条目,然后选择Export。然后您实际上选择的是私钥部分,而不是公钥部分。
其他回答
在我的情况下,证书直到我搜索它的名称才出现!我甚至拍了一段视频作为证据。 “Login”和“My Certificates”都被选中了,我经历了完整的流程,从头开始重新生成它两次,每次证书都不存在,我无法导出.p12文件。一旦我在搜索栏中输入它的名字,它就出现了! : flip_table_emoji:
苹果,修复你的漏洞!我生命中永远回不来的两个小时。
您可以使用Onesignal提供者工具创建一个推送SSL证书。它是免费的,并为你做了所有令人困惑的事情。
它将撤销你当前的一个,因为你生成它,所以重要的是,当你上传它到相关的地方,如果你是活着的。
这在我的onessignal推送通知中是可行的,但我认为它没有理由不适用于其他推送通知。
尝试了上面的很多建议,这是对我有效的解决方案(@Greg):
在生成证书签名请求时,在“密钥链访问”中左侧选择的密钥链必须与您导入已签名证书的密钥链相同。 否则它会将其视为其他人的,并且钥匙链访问不会在下拉列表中显示私钥。
您需要在接入密钥链中选择“证书”页签。
在我的例子中,我把.cer文件变成了“system”选项,而不是“login”选项。然后我把。cer文件从“系统”移到“登录”选项,然后按“我的证书”,然后导出它。p12就可以了。