最近两天的工作中被推送这个玩意儿折磨了好一会,还好经过“不懈地”努力,弄明白了其中的原理。目前大部分app中使用的推送基本上都是第三方集成好的,都有官方的代码,所以写起来还是非常简单的。这里记录的是其中不可避免的,而官方文档中又可能没有提到的一些问题的解决方法。

        首先大家要搞清楚2个证书的使用位置,一个是开发证书,另一个是生产证书。一般在使用第三方集成的推送库中,都会要求上传这2个已经转化为.pem格式的证书。前者是在测试阶段时使用的,在真机上测试推送时,记得要选择开发模式,而且要记得把当前手机注册的token值复制到测试机的token值栏里,不然推送时是无法接受到的,尽管网页端可以看到已经推送到apns上了,但是apns无法找到你当前手机上的token 值,所以无法一一对应,自然无法将消息推送到你的手机上,所以这里值得注意一下。那么生产证书就是在生产环境下使用的,也就是app正式上架后下载到手机上,这个时候默认使用的生产证书了,这个时候选择生产环境推送的话,测试版是无法收到推送的,只有正式版会收到。

        一般推送还会给定一个别名给你进行设置,到时候可以根据这个别名进行单个帐号的推送。要注意的是,如果用户没有登录,尽量不要提前就设置别名

        以上2点是我在正式和测试时遇到的一些问题,虽然不算大事,但还是耽误了我不少时间,在此记录,以免以后再犯。