iOSAPNs在测试环境下可以用,在正式环境下接收不到推送通知

最近遇到了在测试环境下可以正常接收到推送通知,但是在正式环境下却不可以接收到推送通知。并且,appstore上面的app也是可以正常接收到通知。

1.如果你手机中的App是通过XCode直接安装的话,那么你的App就属于开发环境,想要推送成功就需要创建开发环境的证书;如果你的App是打包成ipa文件安装的(不管是正式上线还是自己测试),那么就是生产环境,需要创建生产环境证书,这两个环境的Device token是不同的。

 用Xcode直接安装的,都是使用的测试证书;打包成ipa文件的,可以使测试证书,也可以是正式证书

通过实验,发现如下:
1>. 通过Xcode直接安装(都是测试证书)
测试服务器+测试证书:xcode直接安装,正常推送。
正式服务器+测试证书:xcode直接安装,不正常推送。
2>. 打包成ipa文件(两种证书可选)
测试服务器+测试证书:打包上传到bugly,正常推送。
正式服务器+测试证书:打包上传到bugly,正常推送。
测试服务器+正式证书:没必要,不会把测试服务器扔appstore上。
正式服务器+正式证书:打包上传到appstore或TestFlight,正常推送。

问题原因:因为我在测试正式服务器的推送时候,用的是Xcode直接打包安装到手机的,因此,不能正常接收到推送。
解决办法:用正式服务器+测试证书,打包成ipa文件,上传到bugly,下载测试,没有问题。

总结:

通过Xcode直接安装的,都是测试证书。
打包成ipa文件,有两种证书可选。
正式证书只用在appstore上。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。