收不到服务端推送的消息

ios
标签: #<Tag:0x00007fb83c4e4e80>

(maple_leaf81) #1

服务端采用极光的Web控制台发送消息,客户端是IOS Swift的。刚配置好时,从服务端发送的消息都能够收到。 但过了不久,就收不到了。查看推送历史, 发现 目标|成功 原来是 1|1 变成了 3|3 不知道是哪里出错了。后又改用nodejs 做服务端发送消息依然收不到:Sendno: 1343764632 Msg_id: 1086946942。

请问是哪里出了问题?


#2

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

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


(maple_leaf81) #3

Message ID 1106493936

registrationID 13165ffa4e0d77acd5b


#4

极光这边已经将消息发给了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 合集(持续更新)


(maple_leaf81) #5

我客户端使用的是 IOS 10.2 运行Swift3.0客户端报 wrong userInfo type 导致我收到消息始终为0 。事件没有触发。这个能解决吗?


#6

1、如果你上面给的registrationID 是你现在的测试机得到的,说明他已经集成成功

2、如果信息正确,那么这条消息 收不到的原因参见上述说明进行排查

3、如果不是,日志里面有报错,,没有集成成功,那么劳烦你直接提供你完整的客户端日志信息。


(maple_leaf81) #7

我在 didFinishLaunchingWithOptions 的末尾设置了 JPUSHService.setDebugMode()

但打开 Devices 看不到那个小三角,查看不了日志。


(maple_leaf81) #8

我的客户端你官方提供的swift客户端,设置我都没有动过。而且是收到过推送消息,后来就收不到了。


#9

需要提供信息我才能分析原因,如果registrationID一致,请你去根据上述说明排查!


(maple_leaf81) #10

我的客户端日志怎么看不到呢?


(maple_leaf81) #11

是不是手机有哪个三角下拉框看日志,ipad没有这个按钮啊。


(maple_leaf81) #12
2017-11-21 14:52:40.590440 JPushSwiftDemo[279:12731]  | JPUSH | I - [JPUSHService] 

--------------------------- JPush Log ----------------------------

--------------------JPush SDK Version:2.1.9--build:33----------

-----------------AppKey:3d7ec23998cdd4de2ce839ca----------------

----------------------------------------------------------------

2017-11-21 14:52:40.592747 JPushSwiftDemo[279:12731]  | JPUSH | I - [JPUSHClientController] Action - setup

get the deviceToken  32 bytes

2017-11-21 14:52:40.844805 JPushSwiftDemo[279:12750] Could not successfully update network info during initialization.

2017-11-21 14:52:41.099861 JPushSwiftDemo[279:12733]  | JPUSH | I - [JPUSHSessionController] connecting with coreAddr 103.229.215.37,port 7000

已连接

2017-11-21 14:52:41.296105 JPushSwiftDemo[279:12735]  | JPUSH | I - [JPUSHLogin] 

----- login result -----

uid:6202527448 

registrationID:13165ffa4e0d77acd5b

已登录

get RegistrationID

2017-11-21 14:52:41.309697 JPushSwiftDemo[279:12735]  | JPUSH | I - [JPUSHDeviceTokenReport] try to upload device token:4d7556cafe3d8fcb8794192bfe1b66754147a98c31d4e8e16517c9d2b6fd7fb7

2017-11-21 14:52:41.363118 JPushSwiftDemo[279:12735]  | JPUSH | I - [JPUSHDeviceTokenReport] upload device token success

这个是控制台打印信息。


#13

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

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

根据说明检查了没有!!


(maple_leaf81) #14



(maple_leaf81) #15

我这个是 IOS 10.2


(maple_leaf81) #16

设置 — 通知 中 JPushSwiftDemo 设置的是标记,声音,横幅


(maple_leaf81) #17

Xcode中 bundle indentifier 与服务端的 bundle 是一致的。


(maple_leaf81) #18

代码中没有调用 unregisterForRemoteNotifications


(maple_leaf81) #19

QQ的推送通知都能够收到。


(maple_leaf81) #20

我都检查过了,你看这怎么弄呢?