iOS在极光后台测试收不到消息

ios
标签: #<Tag:0x00007fb839430be0>

(ZHAN) #1

如图使用的证书是Apple Push Notification service SSL,但是我在极光推送的后台推送通知及自定义消息都收不到。而且自定义消息那里只能推送到生产环境下,不能选择开发环境
Message ID 36028797239905235
Reg.ID: 13165ffa4e0c90a7985
Message ID 27021597985092251
Reg.ID: 13165ffa4e0c90a7985


#2

为什么不能选择开发环境?因为你根本就没有上传开发的证书

1、自定义消息已经收到了,但他是前台接收,且不展示

2、通知消息因为环境不一致而失败,你App是开发的,但你推送的是生产的消息给他

关于测试两种环境的说明: 常见问题 - JPush 合集(持续更新)


(ZHAN) #3

你们的文档

明确标示生产和开发都可以用,怎么还需要开发的证书


#4

他说的是该证书的性质为都可以使用,而不是你在官网只需要在一个证书上传的地方传,不是在什么不做的情况下,另一个环境也可以随便你推。

请你勾选「将生产证书用于开发环境」这个选项,或上传开发证书的地方上传开发证书


(ZHAN) #5

已上传了开发证书,但是还是接收不到
36028797239994032
Reg.ID: 13165ffa4e0c90a7985


#6

极光这边已经将消息发给了Apple服务器,你如果确认没收到,是Apple服务器没有下发,几个原因:
1、网络异常,无法连接到Apple服务器(此处与你是否手机可以正常上网是不一样的),Apple服务器对断连期间 的推送,只会保留1条,其他会丢弃。 可尝试切换网络
2、手机-通知栏提醒-提醒样式
3、调用了反注册代码 [[UIApplication sharedApplication] unregisterForRemoteNotifications];或者
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]]是可以进入应用设置页面使用户可以手动变更是否允许通知的设置。不手动操作不会直接关掉推送
4、注册apns代码中有提供类型选择:
entity.types = JPAuthorizationOptionAlert|JPAuthorizationOptionBadge|JPAuthorizationOptionSound; 你没有写上alert
5、iOS10以下,处于前台,收到消息是不会展示的,log会打印,iOS10以上才有提供接口,在前台展示通知
6、push Notification没开
7、App端配置的通配证书
8、高峰期Apple下发有延迟
9、检查清除角标的方法是否影响了消息的展示,角标清除,通知栏信息就没了。
10、不要特别频繁的快速的间隔很小的推送消息,再重测一下看看。

具体排查总结阅读:
1、 常见问题 - JPush 合集(持续更新)
2、 常见问题 - JPush 合集(持续更新)


(ZHAN) #7

谢谢了,我排查一下


(ZHAN) #8

可以了。谢谢啦!