为什么突然后台JavaAPI推送没效果了?

jpush
标签: #<Tag:0x00007fb8472ddd98>

(枫江渔民) #1

前段时间苹果手机都是可以正常收到推送,现在不行了,后台调用API也显示 {“msg_id”:3244315631, “sendno”:204333907, “statusCode”:0},但手机没有收到,然后用JPUSH官方网站后台管理测试推送又可以正常收到,,好奇怪。。怎么办


#2

web推送可以收到,API推送不行,请自行对比二者推送历史-详情中的区别,一般是环境问题(iOS)、appkey不对、推送目标不一样,没有给Android或者iOS传值,alert为空等等。

API推送消息给iOS,需要指定推送的环境!请让后台修改apns_production,false是开发,true是生产。
如果修改没有用,检查自己的代码,是否有覆盖、引用、改的是A推送代码,实际推送却用的B代码等影响

客户端的环境与证书有关!
关于测试两种环境的说明: 常见问题 - JPush 合集(持续更新)


(枫江渔民) #3

没动过代码,生产和开发都试了,前两个星期还收到,现在都收不到了


#4

收不到消息的问题:请提供推送的消息的msgid(MessageID)和收不到这条消息的设备的registrationID(在客户端获取,无论以何种方式做推送,该信息必须提供)

请一定要提供 registrationID 给我,因为你很有可能别名下有很多个目标,别名设置失败,推送的AppKey和设备对应的AppKey不一致等等,只有通过registrationID才能确确实实的查询到具体的设备收不到的原因!

这两个信息如何获取: 极光产品相关提问简要说明


(枫江渔民) #5

我好像找到原因了,我的是Cordova/Phonegap客户端,在调用 window.plugins.jPushPlugin.setAlias方法设置别名报错,导致后台不能使用别名发送,请问这个你们遇到过吗,怎么解决呢,

eut[311:10659] -[__NSCFString objectForKeyedSubscript:]: unrecognized selector sent to instance 0x14686520
2018-01-31 16:07:01.017575+0800 eut[311:10659] *** WebKit discarded an uncaught exception in the webView:decidePolicyForNavigationAction:request:frame:decisionListener: delegate: <NSInvalidArgumentException> -[__NSCFString objectForKeyedSubscript:]: unrecognized selector sent to instance 0x14686520
error in connection_block_invoke_2: Connection interrupted

#6

unrecognized selector sent to instance 这个报错是 APP 逻辑错误报错


(枫江渔民) #7

就升级到最新版xcode9.2,运行就这样了,设置别名调用不成功,


#8

你 SDK 版本多少,用xcode 9的话升级到最新的

https://docs.jiguang.cn/jpush/updates/#jpush-ios-sdk-v308