最近被Android推送搞的头大。试用了几个推送平台的服务,分享一下我的试用感受。
我使用的测试平台是:
荣耀9青春版-Android8.0
红米note2-Android5.0.1
目前为止试用了腾讯信鸽,阿里云,个推,友盟。
保证到达率的话,一定要接入厂商渠道。有厂商渠道的推送平台有腾讯信鸽,阿里云,友盟,魅族推送(如果还有其他平台请留言啊)。有的平台在宣传页就会宣传带有厂商通道,有的平台是最近更新的,在更新日志里有说明。
1.首先是账号注册难度
因为是技术选型阶段,所以注册的是个人开发者账号。这里注册体验最友好的是个推和腾讯信鸽。
个推注册成功后有现成的APK供下载试用,很方便,好评!
腾讯信鸽直接使用QQ登陆即可。
阿里云和友盟我之前注册过,没有什么难度,正常程序走就可以。
华为推送的实名认证是试用的支付宝授权,用起来也很方便。
注册很麻烦的是魅族和小米,这两家都需要上传手持身份证的照片。魅族据说审核需要两天,我没注册。小米因为用户量大的原因,我还是尝试了注册,有个开发者昵称的字段,不允许试用商标或产品名。我填了无数个昵称都注册不成功。对了小米开发者的实名认证需要给小米支付绑定一张银行卡。经过一个小时的努力最终放弃。也不知道开发者昵称是怎么校验的。
2.接入难度
目前绝大部分平台都支持AndroidStudio自动集成,也支持试用jar包集成。使用自动集成可以省去很多配置工作,推荐。
腾讯信鸽,阿里云是使用Receiver机制。即集成或实现SDK提供的Receiver,然后在AndroidManifest.xml中注册一下。在Application中启动就行。
其中腾讯信鸽按照文档集成没有问题,阿里云集成会报错,有库冲突,找不到类等问题,可能会费一些时间。
友盟使用的是绑定handler机制,觉得没有Receiver机制方便。使用自动集成,会包很多错。友盟基础包中有很多友盟其他服务的东西,感觉有点臃肿。我试用时,最终运行起来,也没有收到推送,尴尬~~
3.厂商通道支持
目前拥有厂商通道的厂商有小米,华为,魅族。
上面说了有厂商渠道的推送平台有腾讯信鸽,阿里云,友盟,魅族推送。 我试用了腾讯信鸽和阿里云。
使用厂商通道都需要在厂商的平台注册开发者账号,然后在你使用的推送平台进行绑定。
腾讯信鸽需要在程序中配置厂商通道的AppID,阿里云不需要。
腾讯信鸽中每个厂商通道都需要实现厂商的Receiver。阿里云只需要实现阿里云自己的Receiver即可。
试用的时候我启用了华为的厂商渠道,在华为推送后台推送一条消息,腾讯信鸽是可以收到的,阿里云收不到。在阿里云额外实现华为推送的Receiver,在阿里云后台推送,华为推送的Receiver和阿里云自己的Receiver都能收到推送。
4.到达延迟
腾讯信鸽:单推3秒,群推30秒。集成厂商通道,使用厂商(华为)后台直接推送,秒到。
阿里云:2秒左右。
个推:1~2秒。
5.推送目标
几乎所有平台都支持全量推送,单个用户推送,终端推送,标签推送。 友盟甚至支持了按照版本,渠道,系统版本,地理位置等标签推送。 个推也有针对应用场景的推送,需要联系客服定制。
6.关于到达率
没有厂商通道的我基本不考虑了,比如个推。
个推在华为手机上,锁屏后基本2分钟后就收不到消息了,而且是给了白名单权限。更不用提请后台, 清理后台后没有厂商通道立马收不到了。
阿里云在程序后台运行,集成了厂商通道都,还是没有显示推送。日志显示华为通道的确收到了消息,但是没有唤醒阿里云自己的Receiver,这个Android8.0的更新的限制,估计是没有适配8.0的问题。
腾讯信鸽集成厂商渠道后,清后台了还是可以收到推送。在小米手机上,没有集成小米通道的情况下,程序退出,只要不清后台,就可以收到,保活率还不错。腾讯信鸽在早8点和晚8点左右推送有延迟,貌似是它们服务器性能有瓶颈。
注:在华为手机上,就算使用厂商通道,也是需要白名单权限的,需要App后台运行和允许自启,否则也是收不到的。
7.通道
阿里云使用淘宝通道。
腾讯信鸽使用的是腾讯系游戏的通道,是的你没看错,没有微信或QQ通道。
个推有微博,网易新闻,滴滴等。
小米推送在miui上使用系统通道,非miui手机上,自己一个通道,不共享通道。
华为推送在华为手机上试用系统通道,在非华为手机上使用需要额外安装一个app!
补充一下:极光和个推都是有厂商通道服务,但是基本都是针对VIP收费用户。
8.费用
阿里云有5万的免费额度,腾讯信鸽和厂商推送是免费的。个推有VIP。
总结
很明显,首先考虑的是厂商渠道,然后是用户量大的第三方平台。最好就是自己服务器直接推厂商通道,然后是第三方平台。
最后
这是个前 500 App使用推送平台的统计图。