用证书验证工具验证过了,dev和pro开发证书都没问题,也特意去iOS开发者网站上查了证书状态,没问题。
但是在选择完证书后,点击验证就一直报BundleId与证书不匹配。后来有联系阿里客服也没有解决,然后开始琢磨是什么原因。
首先证书验证工具都没有要输入bundleId的地方,所以有怀疑是不是通过证书名字验证的。所以把推送证书的文件名改为:xxxxxx_pro.p12(xxxxxx为项目的bundleid)
然后再提交,点击验证,竟然通过了。。。但是我印象中没看到阿里云推送的文档里面对证书名有这个要求。
ps:
1两个证书验证工具:
SmartPush(阿里云推送设置页面有跳转链接:https://github.com/shaojiankui/SmartPush?spm=5176.13194971.0.0.7f71cb3ccA9y8V)
Easy APNs Provider(可以在Mac的appstore搜索名字下载。个人更推荐这个,好用一些)
2验证证书的时候,在自己的钥匙串中找到证书,右键点击导出,注意导出格式选择.cer
.cer和.p12的区别:
.p12别人拿到后,如果有你的设备token就可以任意给你发消息,
.cer需要通过你的钥匙串里的证书获取授权,这也就是为什么证书验证软件会提示你输入密码获取授权访问钥匙串,
(好吧我也没有深入研究,总之就是.cer拿去测试就够了,还安全。。)
网友评论