iOS开发之功能模块--推送之坑问题解决

时间:2023-03-08 17:44:07
iOS开发之功能模块--推送之坑问题解决

不管想不想看我后面再开发中总结的经验,但是很值得推荐一位大神写的关于苹果推送,很多内容哦:http://www.cnblogs.com/qiqibo/category/408304.html

苹果开发证书中,有一个根证书,根证书可以绑定相关的开发者设备合作开发一个app项目,如果是多人团队一般根证书是由老大搞定和统一管理我们的设备,这时候老大他会用到他电脑的keychain来生成P12文件,然后并把根证书一并给我们用。

但是,开发苹果推送功能的人不一定是老大,比如老大交给我来弄这个推送证书并给app添加推送功能,而生成苹果的推送cer后缀的证书,就当然在我的电脑生成了,当然肯定要通过老大用的那个开发者账号登录苹果官网,并且要下载和app同一个bundle ID一致的推送证书:

iOS开发之功能模块--推送之坑问题解决

下载好之后一定要双击一下,让它在我的电脑钥匙串中出现,

iOS开发之功能模块--推送之坑问题解决

然后读者你就可以根据这篇:http://blog.csdn.net/showhilllee/article/details/8631734中的第五点提到的:五 从钥匙串访问中导出秘钥 来弄推送的P12文件和后台需要的pem文件。

注意,这个P12文件一定要推送证书生成的,而不是根证书生成的那个P12文件,不要搞错了。

再次强调:因为一个App的推送证书的创建可以和根证书创建的电脑不同,也就是keyChain产生的certSigningRequest不一样,所以私钥也是不一样的,在这里生成Pem时,注意要使用推送证书的私钥!

如果不是通过推送证书生成的P12文件,我自己测试出来会出现的不通过的结果:

iOS开发之功能模块--推送之坑问题解决

而测试正确通过之后的结果:

iOS开发之功能模块--推送之坑问题解决

如果是极光推送需要自我测试,可以参考:http://blog.jiguang.cn/quick_test_jpush_rest_api/