近日,统一推送联盟宣布将把联盟的相关标准与成果纳入到中国信通院与中国互联网协会共建的“中国移动基础服务平台”(China Mobile Service,CMS)相关体系中,为我国移动互联网生态提供自主可控的第三方基础服务。联盟标准和成果中很重要的一部分就是统一推送标准及相关规范。
那么,究竟什么是统一推送?统一推送的意义和价值在哪里?为何统一推送标准得以被纳入到CMS中?开发者又该如何接入统一推送?
个推为您全面解读统一推送的那些事儿。
统一推送之由来
众所周知,谷歌的系统级推送服务GCM(Google Cloud Messaging)在国内无法使用。App开发者要在Android设备上进行消息下发,就需要考虑自建消息推送通道或使用第三方消息推送平台。同时,不同手机硬件厂商也会提供各自的系统级别的推送服务,比如华为推送、小米推送等。如此一来,APP开发者就需要针对不同的设备和系统去做适配,还要花费大量的时间和人力对接、管理和维护不同的推送通道。
为保证服务一致性,降低开发者使用推送服务的成本,2017年10月,在工信部号召下,中国信息通信研究院泰尔终端实验室牵头,联手众多手机厂商和个推等提供推送服务的互联网企业,共同建立了统一推送联盟。联盟的核心任务之一,就是通过标准化的方式统一推送通道和接口,帮助开发者更好地解决消息推送需求,并为终端用户带来更好的使用体验,破解移动互联网生态碎片化的问题。
统一推送UPS:为开发者带来重大利好
2018年,统一推送联盟发布了我国自主的移动基础服务标准《统一推送通道层接口规范》。通过对规范进行更新和完善,联盟于2019年发布《T-UPA0002-2019统一推送接口层规范(冻结版)》,为设备厂商和第三方消息推送服务商适配和实现统一推送提供了具体规范和技术标准。UPS(Unified Push Service),指的则是使用统一的推送通道层接口规范,已经适配和满足统一推送标准的消息推送服务。
如上图所示,UPS的接口规范主要包含两部分:
- APP-Server与UPS-Server之间的API接口集L1,包含推送请求的鉴权(Auth)、提交推送(Send);
- App-Client与UPS-SDK之间的API接口集L2,包含注册令牌(registerToken)、注销令牌(unRegisterToken)、开启推送(turnOnPush)、关闭推送(turnOffPush)。
当应用方使用UPS时,无论是Server端还是Client端,只需按照UPS接口,即可对接所有支持UPS的厂商,无需针对每家厂商一一对接不同接口,真正给开发者节省了大量成本,带来了极大便利。
同时,由于UPS是系统级的推送服务,还能帮助APP大大提升消息的到达率,使得应用即使在后台不活跃的状态下也能收到消息;同时,UPS还可减少手机因为无效连接所耗费的流量消耗以及对系统资源的占用,极大提升终端用户的使用体验。根据统一推送联盟的待机功耗测试结果,系统级推送可以降低30%~40%的手机待机能耗。
综上,无论是对开发者还是对终端用户,统一推送标准的制定和应用都具有非常重要和明显的积极意义。目前,华为、荣耀、OPPO、中兴、vivo、小米、红米等众多知名手机厂商均已通过统一推送联盟测试,完成了对统一推送联盟相关标准的支持。
个推统一推送解决方案
个推是统一推送联盟内唯一一家成为副理事长单位的第三方消息推送服务商。一直以来,个推积极开放和分享自身在推送领域的多年实践和经验,是工信部安卓统一推送服务UPS技术标准制定的主要推动方之一。个推还是业内首家支持UPS标准的第三方消息推送服务商,并陆续同三星、索尼、坚果、比亚迪、海信、零跑汽车等达成战略合作,为手机及电视厂商、智能汽车制造商、汽车操作系统提供商等客户搭建符合UPS标准的智能触达体系,提供统一推送解决方案。
接下来,本文介绍厂商和开发者如何通过个推接入统一推送UPS。
一、厂商通过个推接入UPS
Step1:建立系统级长连接
个推提供符合统一推送标准的推送SDK——个推UPS SDK。厂商将个推UPS SDK集成到系统层后,即可与个推UPS服务建立系统级长连接。
Step2:通过UPS下发消息
厂商通过UPS下发消息的方式有两种,一种是直接使用个推的消息推送服务下发消息,此种方式适用于未自建推送通道的厂商,能够帮助厂商一次性、高效率搭建起符合UPS的消息推送通道,同时还能依托个推智能标签推送、场景推送等技术能力,对用户展开个性化、智慧化的有效触达。
另一种方式主要面向拥有开发者平台的厂商,该类型厂商通过个推UPS服务,帮助开发者完成消息的统一推送。
二、开发者通过个推集成UPS
个推还面向广大App开发者开放了UPS集成方式。
已经注册接入个推SDK的开发者只需要完成以下两步,即可使用个推UPS服务:
Step1:进入个推开发者中心开通UPS机型
目前个推消息推送服务支持的UPS手机厂商有坚果、索尼等。
Step2:在dependencies中增加UPS扩展包依赖
implementation 'com.getui.opt:ups:{version}'
详细接入流程请参考个推文档中心:https://docs.getui.com/getui/mobile/vendor/vendor_open,更多关于个推统一推送解决方案的内容,欢迎通过企业微信,联系个推技术支持进一步了解:
展望
统一推送标准的推出,以及各大手机、电视、汽车等厂商和操作系统供应商对统一推送标准的逐步适配,为互联网生态建设提供了极大推动力,也进一步促进了万物互联。接下来,个推还将持续关注统一推送的动态,并面向开发者继续分享消息推送、大数据等领域的技术实践和解决方案,欢迎大家保持关注。