这个推送是什么原因,有信息返回,但是没提示

jpush
数据统计
收不到消息
标签: #<Tag:0x00007fb84daa3db0> #<Tag:0x00007fb84daa3c70> #<Tag:0x00007fb84daa3b30>

(娃娃) #1

显示没有推送到安卓和ios这种数据还是蛮多的,想请问下具体是什么原因 msg_id 42784196830263149


#2

请提供你预期会收到消息的设备的registrationID

这里可能出现的原因有:
1、iOS、目标环境不对,推送失败


2、Android目标已经不活跃了(超过30天未与极光服务器建立连接)


(娃娃) #3

ios 目标环境不对是什么意思,不是很明白,registrationID这个需要在哪里查?绑定的是这个alias 29373220


#4

就是你iOS 设备本来是开发环境的,你给他推消息的时候选择的确实生产环境,不对应


(娃娃) #5

对应,是生产的


#6

要我查询,请提供这个信息

给我appkey也行,但不能保证查到精确的信息,

下面两点是我的猜测!!!


(娃娃) #7

29373220 这个注册时的ID不行吗?


#8

别名、标签,都不一定能查到精确的信息,你现在先给我appkey,如果你能在客户端取到registrationID,再提供给我!

这个ID信息很重要,建议你们存起来


(娃娃) #9

3c917c6531d05351627534e2 帮查下


#10

该消息的目标报错devicetoken is feedback

1、apple认为token失效了
2、苹果建议程序每次启动的时候从 apns 获取 devicetoken(但不能保证token失效后可以马上获取都能取到新的token)
重新获取一次新的token,测试时,简单的操作就是卸载重装


iOS8获取新的token的办法:

预防措施:
1、譬如这样:
在客户端设置 反注册,然后重新注册这么一个可被特定的自定义消息触发的操作,若用户出现,就这么处理。

对此问题的说明:
1、token失效是Apple决定的
2、注册方法、反注册方法都是系统方法
3、一般来说这种情况多发生在开发环境
4、上线版本,Apple应会延长token有效期
5、加上你们的更新版本周期,个人认为该问题对线上用户影响较小。


(娃娃) #11

这个只是线上情况之一,有很多类似的情况,有没什么好的解决办法,我不能让用户自己卸载再重装啊,这是生产环境


#12

1、token失效问题是Apple决定的,我们这边没法做什么。

2、因为没有registrationID,所以我并不能保证 这个消息的目标报错就是你这个设备收不到的原因
3、其他的可能就是你这个设备在推送消息的时候没有设置这个别名,或者置空了别名导致


(娃娃) #13

这像是没送达到苹果APN服务器吧,alias绑定了,否则应该也不会有msg_id了,所以这就很诡异了,我们线上只有一个别名,安卓能做些什么优化,提高用户接受数据


#14

1、没到达苹果服务器的原因是因为苹果返回了信息说你token失效了,根据这个token发不下去

2、有msgid,有别名,但是我不能保证你这个别名下的失效目标就是你现在测试的目标!
只有知道registrationID才能确认!

3、Android接收消息取决于App的在线状态


(娃娃) #15

是我测试的目标呢,registrationID 这个值我怎么才能取到,难道用户升级了个iso系统或者换个手机就失效了,有什么办法么


#16

客户端获取,然后上传给你的服务器保存起来
https://docs.jiguang.cn/jpush/client/iOS/ios_api/#registrationid


(娃娃) #17

你们能在后台根据这个别名 alias 29373220 查询下registrationID 吗,再查询下具体原因么,我们这边没做用户手机的registrationID 备份


#18

如果你确定以及肯定,这个别名就只有一个设备绑定,且肯定是你现在测试的这个,且必然绑定成功,那我上面查询的结果不就是消息失败的原因吗??

registrationID在卸载重装等情况下是会改变的。


(娃娃) #19

registrationID 是手机唯一ID,别名可能更换手机绑定就换了一个registrationID,但是也没什么影响啊,不确定极光和苹果通信的过程中出的问题是什么


#20

:sob:我查到的原因就是你的设备的token被Apple服务器判定失效了,没什么其他的原因