【友盟+】开发者社区

关于ios devicetoken无效的解释

友盟PUSH 发表于 2016-12-21 18:19:28 |

友盟PUSH
友盟PUSH 发表于 2016-6-1 16:46:40 | 显示全部楼层 |阅读模式


devicetoken为啥会无效?
1. 苹果判定的无效
     a. 在ios推送发送的过程中,有一部分设备苹果会直接返回告诉这个设备是无效的(绝大部分情况是生产开发环境搞错了,上传的证书不是同一个bundleid的,或已经在feedback列表里面了)。
     b. 在ios推送发送后,苹果用feedback形式反馈的告诉我们设备无效的(绝大部分是app卸载)

2. 友盟判定的设备无效:
     开发者可以先了解一下这个帖子  ios9的设备为什么会收到了两条重复的推送
     为了防止ios9用户收到多条消息,会按照openudid和idfa做去重,如果相同的idfa具有了新的devicetoken,我们就会把老的认为是无效的。


无效devicetoken的影响?
1. 在实际使用中没有负面影响,不会导致数据的减少等。友盟的SDK每天的第一次启动会往友盟注册最新的devicetoken。
2. 去除无效devicetoken可以极大的提高推送的发送速度。
iOStoken无效.png

如何排查?
1.  确认xcode的bundleid 和 上传的证书的bundleid是一致的。  mac 或linux里面有很简单的命名可以查看证书的详细信息的。
        keytool -list -keystore $1 -storepass $2 -storetype PKCS12 -v     $1: 证书的全路径   $2证书的密码
2.  确认发送的环境是一致的,如果一个环境不行,换另一个环境试试。 特别是ios9.2以后的设备如果开发环境提示devicetoken无效,改用生产的试试。(对于同一个devietoken,只可能是一种环境的token,不要问为什么同一个devicetoken开发的可以,生产的就不行了)
3.  确保发送的devicetoken是这个设备最新的devicetoken,特别是ios9以后的设备,每次重新安装多会变。
4.  友盟目前为了提高广播的筛选的效率,devicetoken入库是有一天延时的。  单播不受影响。 所以特别是刚上线第一天的app,就不要纠结生产环境的devicetoken多是无效的,因为现有的基本全是开发环境的。
5.  友盟后台会在最新的一个版本里面在 工具里面加入一个新的功能, 查询devicetoken可以显示这个的 devicetoken是不是无效的。 无效的devicetoken可以手动删除, 这样无效以后可以再重新测试,如果立马又变成无效的,这个肯定是苹果的认为的无效,反之是被友盟的标记的无效。






上一篇:ad-Hoc 包 deviceToken 友盟发送拦截说失效
下一篇:DeviceToken在消息列表中推送失败




mini
mini 发表于 2016-11-25 16:49:31 | 显示全部楼层
我也是个推用别名推送的,自己的可以收到.当群推的时候,别人收到了,自己反而没收到.不知什么原因

别怕
别怕 发表于 2016-12-20 11:10:59 | 显示全部楼层
提示 iOS device_token 无效时,怎样知道是 “苹果判定的无效” 还是 “友盟判定的设备无效” ?

友盟PUSH
友盟PUSH 发表于 2016-12-21 18:19:28 | 显示全部楼层
别怕 发表于 2016-12-20 11:10
提示 iOS device_token 无效时,怎样知道是 “苹果判定的无效” 还是 “友盟判定的设备无效” ? ...

ios是苹果判定的,友盟的错误提示是从苹果拿到的
您需要登录后才可以发帖 登录 | 立即注册

本版积分规则

发表主题

精彩推荐

友盟启动初始化报错
版本更新后启动一直报这个错误
微信分享音乐类型失败
近期微信官方对音乐类型的分享增加了白名单限制,会导致不在白名单内的APP分享音乐类型失败 出现这种情
运行报错java.lang.NoClassDefFoundError:有人遇到过吗?
在项目中集成友盟分享功能,只加了微信、qq、微博,都是精简版。按照友盟官方的方法操作的。 签名用的友盟

关注我们

新浪微博
微信

欢迎关注友盟官方微博微信!

在线客服
返回顶部 返回列表