一文秒懂厂商推送

厂商推送

顾名思义,厂商推送指的就是手机硬件厂商提供的系统级别的推送服务。因为她是系统服务,随手机开机后她就一直存在着,有效地保证了推送通道的高可用性。在网络畅通和推送消息内容合法的情况下,通过厂商通道推送消息给该型号手机,不论应用是否存活,都保证消息推送到位,所以为了拉活、促新、留存,我们绝对不能错过她们------厂商推送,消息高效触达的保障。另外文末有捷径哦

推送服务

为开发者提供的消息推送服务,建立了从云端到手机端的消息推送通道,为开发者提供想客户端应用实时推送消息的服务,使应用可以将最新信息及时通知用户,从而构筑良好的用户关系,提升用户的感知和活跃度。

 

关于应用推送,相信作为开发者都知道有很多方式进行实现(各大推送SDK)。不同的推送SDK,产生了多种多样的推送支持服务,实现方式也有差异。随着Google对推送的规范,手机厂商也提供了一套推送服务,通过系统推送服务,让推送更安全可靠。

 

有了这么多推送SDK,到底要选哪一种?

A:我一直在用某某推送SDK,用习惯了,继续用吧,效果挺好的。

B:手机厂商既然提供了系统推送服务,推送达到了更高,更安全可靠,我选手机厂商的。

……

选择哪一种,适合自己最重要,萝卜白菜各有所爱嘛~

厂商推送服务平台

华为推送

小米推送

魅族推送

OPPO推送

FCM推送

第三方推送…

 

这里列举了手机厂商通道推送服务和第三方推送,关于第三方推送就不过多介绍了,主要分析对比手机厂商推送。

支持平台

 

Android

iOS

其他平台

华为推送

支持(华为手机和非华为手机)

不支持

不支持

小米推送

支持(小米手机和非小米手机)

支持

Unity

魅族推送

支持(仅魅族手机flyme系统)

不支持

不支持

OPPO推送

支持(仅OPPO手机系统(ColorOS

不支持

不支持

FCM推送

支持(google服务的手机)

支持

网页、Unity

 

推送类型

 

通知栏消息

透传消息

华为推送

支持(统一系统管理,点击拉起应用)

支持

小米推送

支持(统一系统管理,点击拉起应用)

支持

魅族推送

支持(统一系统管理推送服务,应用自己管理消息)

支持

OPPO推送

支持(统一系统管理,点击拉起应用)

不支持

FCM推送

支持(统一google服务管理,点击拉起应用)

支持

推送目标

 

全量推送

单一设备

别名

标签

华为推送

不支持

支持

不支持

不支持

小米推送

支持

支持

支持

支持

魅族推送

支持

支持

支持

支持

OPPO推送

支持

支持

不支持

不支持

FCM推送

支持

支持

不支持

支持

 

异同:

小米

1.同一应用前提下,设置别名是唯一的,同一个别名不能对应多个RegIDalias对应的设备以最后一次setalias对应的设备为准。(使用场景:单点登录)

2.支持useraccout进行推送,一个user account可对应20台以内的设备。(使用场景:单账号多点登录同时接收消息)

3.订阅标签无上限,别名长度不要求

 

魅族

1.同一个别名可以对应多个设备

2.别名不能超过20个字符

3.标签限额100

 

OPPO

1.全量推送范围是前一天以及更早的注册设备

2.单一设备推送是注册成功的设备,不受是否是前一天的注册限制

 

FCM推送

1.订阅标签无上限

推送落地方式

 

打开应用

打开指定界面

打开网页

华为推送

支持

不支持

支持

小米推送

支持

支持

支持

魅族推送

支持

支持

支持

OPPO推送

支持

支持

支持

FCM推送

支持

不支持

不支持

 

推送通知提示类型

 

声音

震动

呼吸灯

华为推送

默认系统提示音

默认系统提醒方式

默认系统提醒方式

小米推送

支持自定义

支持是否震动

支持是否点亮呼吸灯

魅族推送

默认系统提示音

支持是否震动

支持是否点亮呼吸灯

OPPO推送

默认系统提醒方式

默认系统提醒方式

默认系统提醒方式

FCM推送

默认系统提示音

支持是否震动

支持是否点亮呼吸灯

 

 

 

推送多样性

 

定时推送

离线推送

定时展示

可网络设置推送

定速推送

华为推送

支持

未说明

支持

不支持

不支持

小米推送

支持(未来30天内任意时间作为消息下发时间

支持(最大有效时长14

支持

支持

不支持

魅族推送

支持

支持

支持

不支持

支持

OPPO推送

支持

支持(最大有效时长72小时

支持

支持(可选仅在WiFi网络下推送)

支持

FCM推送

支持

支持(最大有效时长28天)

不支持

不支持

不支持

 

推送国际化

 

国内

国外

华为推送

支持

部分国家

小米推送

支持

支持

魅族推送

支持

几个国家

OPPO推送

支持

不支持

FCM推送

不太友好

支持

 

推送富媒体

 

富媒体

华为推送

支持表格、图片、音频、连接地址等

小米推送

支持长文本和大图

魅族推送

支持长文本和大图

OPPO推送

不支持

FCM推送

不支持

 

推送频率限制

 

推送频率限制

华为推送

默认3000/秒,如需调整,联系华为客服

小米推送

默认每秒3000条,支持平缓推送(每秒1000~ 100000条消息),对推送频率目前无限制

魅族推送

1.单个业务在平台或 API 进行推送有速率限制,默认应用是 500 /秒,如果超过此速率 可以联系魅族进行调整

2.单个业务每天在平台或 API 进行任务推送有次数限制,默认是 1000 /

3.单个设备单个业务 1 分钟内推送超过 5 条会被折叠(只保存最新的消息,可配置)

4.一个 IP 地址每小时请求 API 接口有次数限制(可配置)

5.单个业务每天累计请求 API 接口有次数限制(可配置)

6.单个业务每天推送的消息总量有限制(可配置)

7.

OPPO推送

对新接入的APP,有最低保护阈值,即当天最低可推送量为10000

FCM推送

官方未说明

 

推送客户端感知

 

接收到通知时

点击通知栏通知时

华为推送

客户端无感知

回调客户端

小米推送

回调客户端

回调客户端

魅族推送

回调客户端

回调客户端

OPPO推送

客户端无感知

客户端无感知

FCM推送

应用前台时回调客户端,后台时客户端无感知

客户端无感知,可在应用首页通过Intent获取相关信息

 

 

其他:

华为推送:

1.目前调用一次接口,最多支持1000deviceToken

2.接入新版push,需更新华为移动服务

3.非华为手机可以使用华为Push服务,但需要安装华为移动服务,并且不通过系统PUSH,效果没有华为手机上好

小米推送:

1.支持通知分类,相同通知分类消息会存在替换(新的消息会覆盖之前的),不同类通知可以在通知栏并存。最多可以有10001类通知并存

2.支持应用版本推送

3.支持机型推送

4.开启/关闭app在前台时的通知显示可以服务端来设置

魅族推送:

1.单个设备 1 个月内不活跃,将取消订阅

2.可切换推送消息开关(app可自由选择是否开启此功能)

3.通知栏和透传消息开关互不影响

4.关闭开关不会取消 PushId 订阅,只是对应的消息无法推送

5.可自定义通知图标

6.Flyme系统(4.04.55)上,会直接使用系统长连接通道,所有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.如果设备已有一个月未连接到 FCMFCM 仍然会接受消息,但会立即将其舍弃

 

技术支持

 

技术支持

华为推送

技术QQ群

小米推送

通过官网的问题工单反馈,小米通过邮件回复

魅族推送

技术QQ群

OPPO推送

官网客服

FCM推送

Github提issue

 

上述就是一些厂商推送通用集成总结。

 

小结

看到有这么多的厂商推送,想要达到最佳效果,是不是想把厂商推送都集成到应用中,达到最佳效果,以提高推送到达率和稳定性,但是一一集成的成本高效率慢:集成方式不统一,各家API接口也不尽相同等。那么是否有捷径呢?MobPush就是聚合了各家厂商(华为、魅族、小米、OPPO、FCM、APNS等)推送,同时也实现了自己的推送通道,在都不满足各大厂商通道推送时使用自身通道推送,有效保证消息正常被用户接收。

 

而开发者在集成第三方时经常会碰到一些问题,毕竟是别人的东西出错很不好排查,虽然厂商大大们也有提供相关技术支持下,但是并不是一直、及时的能帮忙解决问题,而MobPush则提供了24小时技术支持服务,完全负责的协助开发者解决问题。

 

MobPush更好的支持了国外推送,因FCM在国内支持不友好,但是MobPush使FCM的国内推送与国外推送一样好用。并且提供Android、iOS、Unity、coco2d、js等平台,满足不同平台推送的需求,后续也会更多的支持其他平台。

猜你喜欢

转载自my.oschina.net/u/3773669/blog/2980329