本文笔者将通过“增加‘系统通知’方式的推送通道”、“找手机厂商开通白名单,避免推送失败的情况”、“进程保活”、“引导打开推送开关”四点来讲述:如何提升PUSH到达率?
这是一篇实操指南,是参考网上资料和相关书籍、复盘了36氪做推送的过程,加上咨询过相关经验产品经理后的总结,希望对你有帮助~
第一是上上周和一位做过很长时间推送优化的产品经理聊天后有了些心得;第二是借上周末在行咨询的机会,又复盘了36氪做推送一些思考;第三则是看《我不是产品经理》这本书也学到很多提升推送到达率的方法,就干脆做个总结,希望能帮到有同样困惑的你~
最直接原因就是提升DAU,让用户更多打开App,这背后隐含的目的是希望激活新用户、召回流失用户,让业务长期健康增长。因此,务必注意这不是一次性的事儿,要通盘考虑,KPI导向的数据提升一定会引起反弹的。
OK,接下来进入正题,聊下提升PUSH到达率的一些手段。
为了帮大家理解PUSH原理,先放一张业务架构图:
其中“推送通道”一般指第三方,或自建的推送服务,主要用于真正向App发送PUSH消息,而App一般会通过安装推送服务方提供的SDK来接收PUSH。
对企业而言,则可以自行开发管理系统进行PUSH消息创建,并根据不同渠道App特点进行消息路由,从而连接到不同通道中进行发送。
一、增加“系统通知”方式的推送通道
如上图所示,大多App选用的推送通道都是如个推、极光、信鸽这样的第三方推送平台,它们都提供了一站式推送服务,在集成便捷、定制化、数据统计上有明显优势。
但它们的传输方式通常采用的都是“透传”方式,也就是不管传输业务如何,它们只负责将需要传送的业务传送到目的节点,同时保证传输质量,而不对传输业务进行处理。
这种透传方式,很容易导致收到消息的App进程,因为目的节点——也就是接收手机操作系统的一些策略给清理掉。
因此,强烈建议在第三方基础上,同时集成指定手机厂商的专属推送SDK,就是上图最上面部分。因为通常它们会支持用“系统通知”方式传输信息——也就是说,服务端实时发送信息到客户端。发送后会在系统通知栏收到展现,同时响铃或振动提醒用户。这种方式到达率会更高。
需要额外说明的是:这里的厂商集成只限国产安卓手机,iOS的推送服务APNs是标准的没法定制,而安卓的原生系统通知服务无法使用(原因你懂的)。
目前市面上常见的,比较成规模的国产手机厂商都支持专属推送SDK,建议根据你家App渠道占比来选择对应厂商,比如:36氪就专门针对小米、华为做了适配,建议安装的有:小米、华为、oppo、vivo、魅族等渠道。
最后提一句,这种方式缺点也很明显:第一是多个厂商集成复杂度和开发成本较高,第二是无法定制客户端的推送显示样式,第三则是因为厂商提供的系统通知的推送方式,客户端无法感知到达情况,只能依赖于被唤醒后发通知到服务端统计,因此可能没法精准统计到达率。这时只能通过时间+渠道来源方式筛选DAU进行估算。具体实施建议酌情选择。
二、找厂商开通白名单
如果没精力集成那么多厂商SDK,还有一种方案,就是想办法将自己接收PUSH的进程加入手机厂商操作系统的白名单,这样不会被系统杀死。
微信、qq这些应用,都加入了各个厂商的白名单,所以才不会出现收不到微信新消息推送的情况。但具体哪家厂商愿意给你开,就只能八仙过海了,这个属于商务层面,这里不再展开。
这个思路也只适用于国产安卓手机,所谓“进程保活”,就是利用不同App进程使用系统广播进行相互唤醒,算是一种“黑科技吧”,举3个场景:
站在用户角度,其实这种做法挺流氓的,容易让系统内存迅速被占满,拖慢App,给大家看下面几张图就知道了:
具体进程保活的原理和应用,在岳建雄老师的《我不是产品经理》第7章有详细描述,有兴趣的同学可以去翻看学习。
但仍旧要强调一点,就是:与其花时间在这种偏门手段上,还不如想办法降低自己App的资源消耗,以减少被系统杀死的可能性,从而为用户提供更顺畅的使用体验,这才是上策。
这里的开关包括系统级和App级的,强烈建议App针对推送权限做更细粒度的控制,间接给用户一个打开总开关的理由,如下图:
在此基础上,可以适当增加一些打开推送开关的引导,一般可以有如下场景:
但真正最合适的引导方式还是让用户体验到你产品的价值后,给一个利他的理由,自然引导,而不是一上来就弹窗。这点很多大厂App都做的很好,建议多参考。
以上就是今天想和大家分享的,有关推送到达率提升的一些观点总结,信息量有点大,部分也参考了其他文章和书籍,希望能对你有帮助。同时,如果有我没提到的,也欢迎你留言告诉我,我也会再和大家分享~