阅读文本大概需要3分钟。
就在昨天,爆出了一条新闻,原文是这样的:
泰尔终端实验室联合包括华为、OPPO、vivo、小米、三星、魅族、金立、努比亚、谷歌、百度、阿里巴巴、腾讯、个推、极光等国外内主要相关企业共同制定安卓统一推送服务(UnifiedPushService,简称UPS)技术标准,旨在为国内的消息推送服务建立统一的标准,为终端用户提供更好的手机使用体验,为应用开发者更好解决消息推送需求,并取得了阶段性成果。
如果这条新闻是真的,仔细看的话甚至会让你觉得有点激动,首先这件事是泰尔终端实验室来牵头的,而泰尔终端实验室隶属于工信部电信研究院,也就是说对于Android推送,工信部终于重视并且插手了;其次,这次工信部联合的企业都是国内知名手机厂商、科技巨头以及最主要的第三方推送服务商,名单中甚至出现了Google的身影,如果这些企业达成一致的话,那么这事绝对有戏。
普通人可能不太理解统一Android推送的意义,其实国内的Android推送简直是噩梦,不管是对Android开发者还是对普通安卓用户。
对于一款App来说,推送功能是必备功能,开发者大多通过集成第三方的推送服务来实现,如小米推送、信鸽推送、个推推送、极光推送等等,这些推送服务的原理就是在后台开启一个服务(Service),保持一个跟服务端的长连接,但是问题是对于Android系统来说,这些Service是可以被系统杀死的,没法常驻,一旦Service被杀死,就意味着你的App将没法收到推送消息了,为了让自家的Service能够存活的久些,国内各大App与第三方推送服务可谓是挖空心思,比如各种「保活」手段,各种「全家桶」的互相唤醒机制等。
除了第三方服务之外,有些手机厂商也有自己家的推送服务,对于这些手机厂商来说,自己家的推送服务是系统级的,不会被杀死,所以有些App想要推送效果更好的话,往往是同时接多家推送服务,针对不同的手机rom对接不同的推送服务,有的开发者还无奈的给这种方式起了个名字叫做集成「UniversalPushSdk」,这对开发者来说,无疑是一种噩梦。
对于普通安卓用户来说,因为各种推送服务的保活、全家桶的互相唤醒等,导致用户手机的耗电量、性能受到影响,很多用户的Android手机越用越卡,混乱不堪的推送是罪魁祸首。
有人可能会问,难道苹果手机没有这问题么?
当然没有,因为苹果是自己有一条推送通道叫做APNS(ApplePushNotificationService),这条推送服务是系统级的,不会被杀死,所有iOS系统上的App必须要走这条通道才能实现推送功能,所以,苹果手机上的推送服务很干净、很标准。
其实因为Android系统是Google的,自然Google也有一条类似苹果APNS的系统级推送通道,叫做GCM(GoogleCloudMessaging),但是众所周知,Google的服务在国内没法使用,国内呢也没有一个统一的标准,各家都在各搞各的,各有各的通道,各有各的一些技术手段,这才导致国内推送乱象丛生。
这次由工信部牵头来统一国内Android推送,如果真能达成一致,于开发者、于普通用户以及整个行业都是一件喜大普奔的大好事。
这条新闻上说「取得了阶段性成果」,主要指各方已经达成一致,统一了推送架构,未来将由终端厂商提供系统级推送服务(类似苹果APNS的唯一推送通道),相应的不再允许各App在后台保留常连接,各终端厂商实现推送通道接口和功能统一,方便开发者接入。
我姑且以一个Android开发者的角度,以一个行业人士的角度来评价下,这个方向绝对是对的,这个进展也确实可以算的上是「阶段性成果」,希望工信部能继续把这件事快速推进下去,早日帮助Android开发者和安卓用户脱离苦海。
我们大家能做的,就是希望把这条消息扩散出去,让更多的开发者和用户知道这件事的意义,让工信部可以看到外界对这件事的