IM篇 I (╯‵□′)╯︵┻━┻ 极光?个推?腾讯云?第三方推送平台该怎么选?!

bige_1110170910_7079.png

推送的意义

「推送机制」为我们提供了一条可以「直接触达用户」的路径,使移动设备终端的「全时信息传播」成为可能,是C端运营人员提高用户活跃度、提高应用留存率的常规途径之一,以助于其「更高效地完成运营目标」。

推送的技术实现难点

自建推送通道

主流的推送方案实现,是由客户端和服务端建立一条TCP长连接通道,并由客户端定期向服务端发送心跳包,以保持长连接可用。服务端有消息要推送时,即可通过这个长连接通道直接下发到客户端。

Online(1).png

然而,要实现这样一套自建推送通道,却没有以上所描述的那样简单。且不说服务端需要应对海量长连接的维护管理,客户端自身也要妥善处理包括「网络的频繁变化」、「系统对内存/电量的限制」以及「移动网络运营商的NAT超时」等问题

应用级的方案的开发成本太大,那么系统级的方案又能不能解决问题呢?

系统推送通道

iOS系统提供了APNs(Apple Push Notification service,Apple推送通知服务),负责接管「将推送消息路由到指定iOS设备上,进而传递给指定App」的工作,统一的方案,清晰的流程,没有什么好讲的。

Android系统虽然也提供了FCM(Firebase Cloud Messaging ,Firebase云消息传递),但是由于众所周知的原因,Google服务在国内并不能正常的访问,因此想要依赖FCM执行可靠的推送并不可行

在这样的背景下,国内的手机厂商都陆续在其定制Android系统上搭建起自己的厂商推送通道,以弥补国内定制Android系统在系统推送通道这一块的缺陷。

但可能由于不同手机厂商建立消息推送通道的起步时间不一样,某些厂商在这方面的技术积累和实践比较少,导致不同厂商推送通道的推送消息到达率和及时率表现不一

除此之外,每个厂商推送通道SDK的接入方式和调用API都不一样,需要单独去对接每个厂商,集成步骤也较为繁琐

那么就真的没有办法了吗?

第三方推送平台

也正是由于推送功能是国内Android系统的一个痛点,因此才诞生了如今市面上形形色色的第三方推送平台。

虽然几乎所有的第三方推送平台的核心技术原理都别无二致,都是帮我们完成了上面所说的「自建推送通道」和「厂商推送通道对接」的工作,但确实让我们将更多的时间精力放在了能让App与众不同的方面上。对于大多数App来说,推送这种非核心功能的技术实现,完全可以交给第三方推送平台的专业团队帮我们完成

那么,有哪些第三方推送平台可以让我们选择呢?

推送平台分类

纵观目前市面上主流的第三方推送平台,大致上可以分为两类:

一类是以推送业务起步,并专注于推送业务,以此为核心竞争力的,如:极光推送、个推等。

另一类是依托大厂建设的生态和技术积累,单独剥离出一个推送业务团队的,如:腾讯云推送(原信鸽)。

推送平台选型

以下是根据我从事过数年的IM开发、对接过多个第三方推送平台和厂商推送通道的经验所总结的一些技术选型的建议,仅供参考:

第一,术业有专攻

专精于某领域的平台相对会投入更多的开发资源,可能会比把该领域比作为多条业务线其中之一的大公司表现更好一点。

这个不难理解,虽然大厂有雄厚资本和技术实力为其背书,但是你可以想想,这些大厂的核心技术人员会被安排到哪里呢?固然会是其核心产品上面,比如百度的顶尖人才会集中在搜索引擎上(画外音:也可能是在竞价排名系统上。。。)。

但是也不能一概而论,关键还是得看团队在推送业务上投入的开发资源。这里有一个很好的参考标准就是:

SDK的更新频率和更新内容

以某推送为例(为避免有打广告的嫌疑,此处隐去了具体名字),通过查看其更新日志可知:

更新时间:

  • 2021-10-28
  • 2021-08-18
  • 2021-07-26
  • 2021-07-12
  • 2021-07-02
  • 2021-03-30
  • 2021-02-25
  • 2021-01-04
  • ...

平均更新频率在一个月左右,并且都附上了详细的Change Log告知开发者更新内容。

ChangeLog.png

相反,对比查看某曾经推送巨头的更新日志:

ChangeLog2.png
what.jpg

其最近的更新频率比较高也许是因为《隐私法》的发布不得不更新,而之前几乎是平均4个月一更甚至年更,而且就更新内容来看都是些不痛不痒的东西,完全没看出有跟随Android系统版本迭代或突破性的技术升级,其技术投入的程度就不言自喻了。

第二,看市场占有率

早期的第三方推送平台广为人诟病的一点就是关联启动,即同一设备中,同时接入了该平台SDK的所有App,都会被一连串拉起,导致设备的内存和电量快速耗尽,这其实是跟平台自建推送通道的技术实现原理有关。

正如前面所说,使用自建推送通道进行消息推送的前提,是TCP长连接可用。为了最大限度保持这个长连接,平台SDK一般会选择一个当前设备中正在运行的App,由该App与平台的推送服务器建立TCP长连接,并为设备中同时接入了该平台SDK的所有App提供推送代理,所有App共享这一长连接通道。

当有消息需要推送时,即可通过该共享通道,将消息有效的下发到指定设备端,并将设备中指定的App拉起。更有甚者,在共享通道启动时,就已经扫描一遍设备上的其他应用并全部拉起了。

虽然作为用户我们厌恶这种行为,但是从开发的角度看,这种做法确实可以提高推送的到达率和及时率。所以,如果是为接入推送功能考虑,我们可以看有哪些知名的、安装率高的App接入了该平台,通常设备中接入该平台SDK的App越多,推送成功率相对也就越高。

不过,随着厂商推送通道的日渐完善,第三方推送平台提升推送到达率和及时率的技术权重也逐渐向厂商推送通道倾斜,通过自建推送通道成功完成推送的比例其实占比不大。具体的比例可以看看平台提供的数据统计,此项可以选择性考虑。

第三,看需求场景

也就是说,看你是注重「更高的推送到达成功率」、「更及时的推送速度」、「更丰富的推送点击行为」、「更灵活的推送用户分群」还是「更精确的推送数据统计」等,可以看不同平台官网提供的文档来评判符不符合你们的需求。

比如说,如果你做的是即时通讯App,那接入第三方推送平台大概率是为了覆盖离线场景下的消息推送,对于「更高的推送到达成功率」和「更及时的推送速度」的要求自然都要非常严格。

而如果你只是普通的App,那接入第三方推送平台大概率是为了推送营销的广告,对于「更及时的推送速度」其实要求不高,只需要「更高的推送到达成功率」,保证能送达到用户就好;除此以外,通常还需要「更灵活的推送用户分群」来进行针对特定人群的营销,以及「更精确的推送数据统计」来验证是否达到营销目的。

第四,看服务跟进

有在线技术客服能随时联系反馈问题,永远比只能提工单干等着好。推送平台说到底是服务提供方,把用户需求和用户体验置于工作流程之下是很不负责任的表现。

另外,平台解决问题的能力也很重要,合格的SDK提供方应该要比开发者更早地预见政策的变化和问题的产生(如本次《隐私法》的发布),并快速给出相应的解决方案,而不是后知后觉等到大量开发者反馈问题才着手改进。

最后才是看价格

在功能表现差异不大的情况下,自然是选择价格较低的一个。

创业团队通常对价格比较敏感,但其实比起糟糕的用户体验和后期替换方案的巨大成本,价格往往是应该考虑的因素中权重较低的。

结语

看完以上内容,相信你对如何选择第三方推送平台已经有了大致的一个思路了,如果你有更好的建议,欢迎在评论中补充。如果这篇文章对你有所帮助,不要忘记给一个赞哈!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 221,548评论 6 515
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,497评论 3 399
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 167,990评论 0 360
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,618评论 1 296
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,618评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,246评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,819评论 3 421
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,725评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,268评论 1 320
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,356评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,488评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,181评论 5 350
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,862评论 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,331评论 0 24
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,445评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,897评论 3 376
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,500评论 2 359

推荐阅读更多精彩内容