iOS 11推送的消息有的收不到。


(将你睡服) #1

现在在我们后台网站推送的消息可以收到。但是订单被抢单,被派单之类的消息消息就收不到。

第一张图是在后台网站推的消息。第二个是订单被签收之后推的消息。安卓可以收到。ios这边就收不到。我们都是新手,找不到原因,求帮助一下。


(将你睡服) #2

后台的java写的


#3

对比你们的两条消息,你们推送使用的别名是不一样的,你们的测试机一样?

一个设备只允许设置一个别名,请确保需要收到消息的设备设置了别名且 iOS 的环境一一对应


(将你睡服) #4

我这边别名设置是 每个账号都有唯一的一个code,我这边是登录的时候把这个code设置成别名。我这边的推送环境是开发环境。。后台网站推的可以收到是不是说明我的别名设置没问题??


#5

你没有发现两条消息发的 目标别名不一样吗?这如何用来对比?


(将你睡服) #6

你好,刚才看了一下,刚才那个是另一个账号了信息。所以别名不一样

我又下了个单,被接单之后还是没有收到推送。。这次别名和后台推送的是一样的。


#7

你直接给我官网推送的消息的msgid和 API 推送的消息 的msgid值

以及你收不到消息的设备的regIstrationID值。

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

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


(将你睡服) #8

registrationID: 1114a89792a38457f20
Message ID 36028797531329326 官网web
Message ID 27021598277581528 后台网站


#9

你这两条消息都是已经成功发给了 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 合集(持续更新)