一文秒懂厂商推送
厂商推送
顾名思义,厂商推送指的就是手机硬件厂商提供的系统级别的推送服务。因为她是系统服务,随手机开机后她就一直存在着,有效地保证了推送通道的高可用性。在网络畅通和推送消息内容合法的情况下,通过厂商通道推送消息给该型号手机,不论应用是否存活,都保证消息推送到位,所以为了拉活、促新、留存,我们绝对不能错过她们------厂商推送,消息高效触达的保障。另外文末有捷径哦
推送服务
为开发者提供的消息推送服务,建立了从云端到手机端的消息推送通道,为开发者提供想客户端应用实时推送消息的服务,使应用可以将最新信息及时通知用户,从而构筑良好的用户关系,提升用户的感知和活跃度。
关于应用推送,相信作为开发者都知道有很多方式进行实现(各大推送SDK)。不同的推送SDK,产生了多种多样的推送支持服务,实现方式也有差异。随着Google对推送的规范,手机厂商也提供了一套推送服务,通过系统推送服务,让推送更安全可靠。
有了这么多推送SDK,到底要选哪一种?
A:我一直在用某某推送SDK,用习惯了,继续用吧,效果挺好的。
B:手机厂商既然提供了系统推送服务,推送达到了更高,更安全可靠,我选手机厂商的。
……
选择哪一种,适合自己最重要,萝卜白菜各有所爱嘛~
厂商推送服务平台
华为推送小米推送魅族推送OPPO推送FCM推送第三方推送…
这里列举了手机厂商通道推送服务和第三方推送,关于第三方推送就不过多介绍了,主要分析对比手机厂商推送。
支持平台
推送类型
通知栏消息透传消息
推送目标
异同:
小米:
1.同一应用前提下,设置别名是唯一的,同一个别名不能对应多个RegID,alias对应的设备以最后一次setalias对应的设备为准。(使用场景:单点登录)
2.支持useraccout进行推送,一个user account可对应20台以内的设备。(使用场景:单账号多点登录同时接收消息)
3.订阅标签无上限,别名长度不要求
魅族:
1.同一个别名可以对应多个设备
2.别名不能超过20个字符
3.标签限额100个
OPPO:
1.全量推送范围是前一天以及更早的注册设备
2.单一设备推送是注册成功的设备,不受是否是前一天的注册限制
FCM推送:
1.订阅标签无上限
推送落地方式
推送通知提示类型
推送多样性
推送国际化
推送富媒体
推送频率限制
推送客户端感知
其他:
华为推送:
1.目前调用一次接口,最多支持1000个deviceToken
2.接入新版push,需更新华为移动服务
3.非华为手机可以使用华为Push服务,但需要安装华为移动服务,并且不通过系统PUSH,效果没有华为手机上好
小米推送:
1.支持通知分类,相同通知分类消息会存在替换(新的消息会覆盖之前的),不同类通知可以在通知栏并存。最多可以有10001类通知并存
2.支持应用版本推送
3.支持机型推送
4.开启/关闭app在前台时的通知显示可以服务端来设置
魅族推送:
1.单个设备 1 个月内不活跃,将取消订阅
2.可切换推送消息开关(app可自由选择是否开启此功能)
3.通知栏和透传消息开关互不影响
4.关闭开关不会取消 PushId 订阅,只是对应的消息无法推送
5.可自定义通知图标
6.在Flyme系统(4.0,4.5,5)上,会直接使用系统长连接通道,所有app会和系统共享一个长连接
OPPO推送:
1.每天仅可推送前一天累计用户数同等数量的消息数(不限制推送的用户及单个用户接收数,仅限制当天推送总量)
2.全量推送时,全量用户不包含当天新注册的,当太难新注册有T+1限制,需注册第二天包含在全量中,单个用户推送不受注册T+1限制
3.在最新ColorOS系统上,会直接使用系统长连接通道,所有app会和系统共享一个长连接
4.OPPO推送不是完全对外开放,只对在OPPO应用市场上架,并等级达到A级的应用才有资格申请Push服务
5.OPPO通道目前不太稳定,时好时坏,反馈客服,内部已在做优化,静候更新~
FCM推送:
1.支持折叠和不折叠消息展示在通知栏(不折叠消息展示时,FCM不保证传递顺序,例如聊天消息或者关键消息)
2.对于Android,不折叠情况下,最多可存储100条消息。达到此限值后,所有存储的消息都将被舍弃。设备在重新联网后将受到一条特殊消息,提示已达到此上限。之后,应用可以正常处理该状况,一般情况下回请求与应用服务器完全同步。
3. FCM允许应用服务器在任意指定时间内为每台Android设备使用最多4个不同的折叠键
4.如果设备已有一个月未连接到 FCM,FCM 仍然会接受消息,但会立即将其舍弃
技术支持
上述就是一些厂商推送通用集成总结。
小结
看到有这么多的厂商推送,想要达到最佳效果,是不是想把厂商推送都集成到应用中,达到最佳效果,以提高推送到达率和稳定性,但是一一集成的成本高效率慢:集成方式不统一,各家API接口也不尽相同等。那么是否有捷径呢?MobPush就是聚合了各家厂商(华为、魅族、小米、OPPO、FCM、APNS等)推送,同时也实现了自己的推送通道,在都不满足各大厂商通道推送时使用自身通道推送,有效保证消息正常被用户接收。
而开发者在集成第三方时经常会碰到一些问题,毕竟是别人的东西出错很不好排查,虽然厂商大大们也有提供相关技术支持下,但是并不是一直、及时的能帮忙解决问题,而MobPush则提供了24小时技术支持服务,完全负责的协助开发者解决问题。
MobPush更好的支持了国外推送,因FCM在国内支持不友好,但是MobPush使FCM的国内推送与国外推送一样好用。并且提供Android、iOS、Unity、coco2d、js等平台,满足不同平台推送的需求,后续也会更多的支持其他平台。