今天遇到的一个特别神奇的问题:
应用在环境下打的包收不到推送了,打包之后都没有推送,但是我真机测试又是可以收到推送消息的。经过好久才找到原因,感觉很坑。这里记录一下问题:
1.由于我的推送第三方使用的是"个推",我先用个推的官网发了一条推送消息,发现安装ipa包的设备还是没有收到;<奇怪???>;
2.连真机Xcode运行测试,手机可以收到推送.<说明不是代码问题了>;
3.然后不知道为啥,百度"iOS打包后收不到推送信息",看到这篇文章: http://blog.csdn.net/wangyang6275/article/details/50012001
4.看完之后,定位还是证书问题.回想自己打包的流程:
a:自动选择的证书;
b:这里自动选择生成的是发布的证书,然后还不能改成开发的证书<因为我的个推上传推送文件是开发环境的>
到这里就定位了就是这个证书"开发"和"发布"的问题了......
按照上面那个链接的文章解决办法,问题完美解决了,我的手机上也可以收到推送了....
然而,问题又来了......
二."开发者中心"的开发Provision证书的设备数是64,打包之后传到"蒲公英"上,显示设备数是62,这就尴尬了,没有的设备正好是经理要测试的那台设备.
1.果断上"开发者中心"重新生成了开发Provision证书,添加进Xcode;
2.再次打包,还是62台设备数,到这里真不知道为什么;
3.还有个问题: 当我勾选"自动选择证书"的时候,正常打包,不会报错,然而使用手动自己选择证书的时候,报以下错误:
这也是我疑惑的地方,明明证书这块都是没问题的,想不通为啥报错?????????
三.问题解决:
这里呢,应某人要求给他用"凌风"来署个尾名...哈哈哈?...还是很感谢引导我的问题得到了解决.
1.进到Xcode偏好设置,先将重复名字的证书删除,重新生成;
2.进到"开发者中心"重新下载开发Provision证书,手动选择开发测试证书重新打包:
你会发现到这里在上面出现的手动选择报错的问题解决了,自动选择证书后如下:
再次打包生成ipa,传到蒲公英,显示设备数正确64台.发布应用,正确安装,收到推送消息了.
好开心,问题解决了.只想说被坑了半天,中午还没休息.....不过,心情还是很兴奋的,毕竟证书问题,到目前为止,没有太大问题了,小思妹再也不用担心不会打包了..嘿嘿?
总结:
1.虽然Xcode现在可以自动选择证书,打包ipa,如果是开发测试包,建议还是手动选择吧;
2.不要把Xcode自动选择证书想的太智能了,他不是人,他不会根据日期选择最近下载生成的开发Provision证书;
3.遇到问题,努力解决问题;
4.遇到问题不要"郁闷",而需要分析问题,解决问题.
一起加油哟!!!