[React Native] 极光推送,测试环境能收到,生产版本收不到

使用ReactNative集成极光,使用jpush-react-native

问题

极光推送,iOS测试环境能收到,正式版本收不到。Android测试和正式环境都可以收到。

原因

是打包的App中包含了测试版的JPush

以上问题的自我检测流程:

  • 检测推送证书,测试版/生产版都OK
Paste_Image.png
  • 和极光官网配合推送测试,先避免走服务器推送,缩小错误的范围
    正式环境发送:能否收到
    测试环境发送:能否收到
    我遇到的问题就是,打包后的生产版本,生产环境推送收不到,测试环境推送能收到

  • 初始化参数:极光初始化有个参数isProuction,是否是生产版,正式发布时要更改
    iOS、go等SDK都有这个参数,Android SDK没找到,不区分debug/release,这个从JPush官网就可以看到

  • 我遇到的问题是iOS正式版本打包,isProduction=true,但是生产环境收不到,测试环境可以。
    推断原因是打包时JPush.isProduction没有生效

  • 其余问题参考:
    极光推送开发环境可以收到,生产环境收不到推送 (爬坑笔记)
    http://www.jianshu.com/p/0d382c4d98ff

原来iOS默认配置

Automatically manage signing 
BuildSetting => Code Signing Identity => debug/release 都是 iPhone developer,XCode会自动更改

目前怀疑 XCode可以自动识别,但是 JPush无法识别是debug/release

现在配置如下

Paste_Image.png
Paste_Image.png

常见问题

Q:XX.entitlements里面 APS Enviromment => development正式上线需要修改么?
A:不需要,不要管它,改了打包可能会报下图错误

Paste_Image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容