tft每日頭條

 > 圖文

 > 安卓無通知推送

安卓無通知推送

圖文 更新时间:2025-02-25 02:22:39

成立于2017年底的統一推送聯盟(Unified Push Alliance)是由國家工信部牽頭,由中國信息通信研究院泰爾終端實驗室倡導,聯合了華為、OPPO、vivo、小米等多家國産智能手機品牌聯合成立的“安卓統一推送聯盟”。

安卓無通知推送(煩人的安卓推送終于有治了)1

這家機構成立的初衷就是為了解決你手機上的應用推送服務問題。在最近,統一推送聯盟又傳出新的進展:

25日,統一推送聯盟官方宣布,已收到華為技術有限公司、廣東歐珀移動通信有限公司、深圳市萬普拉斯科技有限公司、深圳市銳爾覓移動通信有限公司四家公司的的進度确認,均已經按照聯盟标準《T-UPA0002-2019統一推送接口層規範》最新版本,完成了開發工作。這意味着,符合聯盟标準的統一推送服務,将覆蓋華為、榮耀、OPPO、realme、一加五個品牌的手機。

安卓無通知推送(煩人的安卓推送終于有治了)2

這樣做的後續會對我們産生怎樣的影響?

什麼是推送?

這是需要弄明白的第一個問題。

這個問題很簡單,我們當前使用的智能手機随時随地都可能會收到來自應用的消息推送。比如大家日常最常用到的微信。當你收到朋友發過來的微信消息時,手機就會彈出消息通知,這條消息其實就是經過你手機相應的推送機制推送過來的信息。

安卓無通知推送(煩人的安卓推送終于有治了)3

需要注意的是,推送信息其實是在手機沒有打開應用,甚至是應用都沒有在後台常駐的情況下收到的。要做到這一點,其實背後就牽涉到手機的信息推送原理。

如果你使用的是iPhone,這套信息推送機制名為APNs(Apple Push Notification service)中文翻譯為:蘋果推送通知服務。它的主要工作原理是:

安卓無通知推送(煩人的安卓推送終于有治了)4

前期應用程序申請消息推送服務,你的設備會向APNs服務器發送注冊請求;APNs服務器接受請求,并将deviceToken返給你設備上的應用程序 ;客戶端應用程序将deviceToken發送給後台服務器程序,後台接收并儲存;後台服務器向APNs服務器發送推送消息 ; APNs服務器将消息發給deviceToken對應設備上的應用程序。

安卓無通知推送(煩人的安卓推送終于有治了)5

看起來比較複雜,其實很好理解:用戶發送信息給你,應用就會将這條信息的提醒内容推送到蘋果的服務器端,再由蘋果的服務器中轉發送到微信目标用戶。于是,你的手機上就會彈出信息通知。換句話說,Apple的服務器在其中扮演了一個中繼站的角色。

APNs的好處是能夠使得應用在未喚醒的條件下,就能實現信息推送,避免了應用常駐後台帶來的功耗,應用程序也不用随時保持網絡連接,同時也不用安裝額外的SDK。

安卓生态混亂的推送機制

那麼安卓手機的推送機制是怎麼樣的呢?其實原理大緻和蘋果的APNs差不多,但卻存在一系列的現實問題。

安卓無通知推送(煩人的安卓推送終于有治了)6

目前安卓的推送服務名為GCM(Google Cloud Messaging),譯為Google雲端通訊。它能夠讓第三方應用的開發者把通知消息或信息從服務器發送到所有使用這個應用的安卓系統或Chrome浏覽器的應用或拓展上。(需要說明的是,在2016年的I/O大會上,谷歌推出了全新服務Firebase,并啟用了FCM(Firebase Cloud Messaging)推送服務。根據谷歌的計劃,FCM服務将替代GCM,二者在核心工作原理上類似)。

但問題是,由于衆所周知的原因,包括FCM在内的一系列谷歌服務在國内并不能正常使用,要想實現國産安卓手機的信息推送就不得不想其他的辦法。具體來說,目前國内安卓生态的信息推送機制大概有三種。

安卓無通知推送(煩人的安卓推送終于有治了)7

第一種就是應用自身單獨建立推送服務。采用這種做法的是微信、QQ等這類具備自己搭建服務器,建立消息推送渠道能力的超級應用。由于這類即時通訊類應用對于信息及時推送的需求更加迫切,所以他們背後的廠商花了很大的代價去建立推送渠道。日常工作時,系統後台需要駐留一個推送服務,便可實現相應的實時的信息推送。而對于這類用戶數量龐大的超級應用,大多數的系統都會放寬其常駐後台的權限,确保不會被系統清理掉進程。

安卓無通知推送(煩人的安卓推送終于有治了)8

第二類就是手機廠商搭建的消息推送服務。在國内目前出貨量排名靠前的手機廠商都在自家的定制化UI上做了一套和FCM類似的信息推送機制,比如小米的MiPush,華為的HMS 等等。和 安卓的FCM 一樣,它有專門的服務器将來自各個應用的信息中轉到用戶手機上,用戶手機的後台隻需要運行這一個推送服務,就能收到無數應用的推送消息。

但問題是,對于開發者來說面對不同手機品牌建立的推送機制,開發者就需要在應用内加入不同的SDK。這樣一來,就面臨應用臃腫,後期升級維護麻煩等問題。尤其是對于一些小的開發者來說,針對不同的品牌做應用匹配并不現實。

安卓無通知推送(煩人的安卓推送終于有治了)9

第三類是借助第三方的信息推送平台,比如國内的極光、友盟等等。有的個人開發者沒有足夠的精力給自己的應用做消息推送。于是他們接入一個具備分享、消息推送等功能SDK,就能實現信息推送功能。

這樣做雖然省事,但對用戶并不是很友好。很多時候,這類應用會相互喚醒其他應用了同樣SDK 的應用,導緻大量的應用進程在後台被喚醒、駐留。另外這些第三方的SDK由于缺少手機廠商的支持,其停留在後台的服務很容易被系統被幹掉,導緻消息推送的不及時。

如此一來,對于國内安卓用戶而言,我們手機上安裝的應用可能會存在不用的信息推送機制。這些應用之間由于信息推送機制的不規範,往往存在交叉喚醒、鍊式啟動的現象,于是我們的手機就變得更加耗電和卡頓。

安卓無通知推送(煩人的安卓推送終于有治了)10

試想一下,如果你的手機裝了BAT的APP,也裝了其他第三方的APP。你的手機為了實現即時信息的推送,就需要保持和騰訊、阿裡、百度服務器的連接,同時還要保持其他第三方服務器的連接。為了保證能把消息及時推送,很多APP就在後台保持活躍。

在維持如此多長連接和APP活躍的情況下,要想實現手機不卡頓就隻能加大手機的運存以及提升手機的硬件性能,比如電池容量以及處理器性能等等。

而在原生安卓以及iOS上,手機隻需要保持和谷歌、蘋果的服務器鍊接就可以了。

聯盟建立的作用

這麼看來,國産安卓生态其實一直都缺乏一個統一的信息推送平台。統一推送聯盟(Unified Push Alliance)的建立其實就是為了建立一個這樣的平台。

安卓無通知推送(煩人的安卓推送終于有治了)11

為了給手機用戶提供更好的使用體驗,統一推送聯盟聯合「Android 綠色應用公約」倡議互聯網服務提供商和 APP 獨立開發者未來采用統一推送的解決方案,并放棄非必要後台行為,包括:

  • 不在啟動應用時強制請求『讀取手機狀态和身份(READ_PHONE_STATE)』權限。
  • App限制交叉喚醒、鍊式啟動。除用戶的主動交互觸發外,避免啟動其它應用未處于運行中的進程。
  • App讓設備CPU盡可能處于休眠狀态,請求喚醒CPU的周期性任務時間間隔盡可能大于1小時,并避免在不必要的時間段(如夜間)繼續調度周期性事件。
  • App避免不必要常駐後台的行為。在應用進入後台的短時間内須停止所有後台服務,且在除了收到廣播和正常觸發的後台行為期間不可以再啟動新的後台服務。

在公布的《統一推送技術要求和測試方法》文件中,統一推送聯盟提出了對各終端廠商制定推送基本技術指标和測試方法的要求。

如空載流量應小于 300kB/日、空載功耗應小于 40mAh/日,前者是指終端接入數據網絡(不包括 Wi-Fi)且推送通道待機狀态下,無消息推送時,流量消耗大小;後者指終端在熄屏條件下,接入數據網絡,無推送消息時,推送服務消耗的功耗。

安卓無通知推送(煩人的安卓推送終于有治了)12

一個統一、規範的推送平台的建立,對于各方來說都是有利的。應用開發商、手機廠商省去了自建信息推送機制的建設和維護成本。個人開發者能夠減少應用開發和維護的工作量,降低應用開發成本。而對于消費者而言,手機後台不用駐留那麼多各式各樣的服務和應用,也能有效避免一些流氓應用為了保持活躍度而頻繁喚醒而造成的手機卡頓、耗電量激增等問題,改善了國内安卓用戶的手機使用體驗。

安卓無通知推送(煩人的安卓推送終于有治了)13

需要注意的是,在統一推送聯盟的官網會員單位中我們可以看到谷歌公司也位列其中。很明顯,谷歌也參與到了這次推送聯盟的組建之中來。在國内安卓生态的基礎上建立統一平台這件事情上,谷歌的經驗和技術值得借鑒和學習。此外,平台建立之後能一定程度上改善國内安卓系統的使用體驗,谷歌自然也樂見其成。

那麼什麼時候能夠正式用上采用統一推送标準的應用呢?

從聯盟公布的時間表來看,2019 年 3 月 1 日将開始統一推送标準符合性測試,2019 年 12 月 31 日開始兼容現有各推送通道的統一推送标準。也就是說,明年我們國内的主流手機應用有望用上統一推送聯盟的推送服務。

前面我們提到,包括華為、OPPO、一加、Realme在内的國産手機廠商已經完成了前期開發工作。接下來,其他的手機廠商也必将持續跟進。聯盟也表示,後續将持續跟蹤并公布廠商統一推送服務上線情況及具體接入方案,并對統一推送的實網性能開展測試。

從本質上看,安卓生态目前存在的一系列問題本質上還是因為其開源特性所天生具備的碎片化和不規範問題所導緻。尤其是在國内完全不同的市場環境下,這樣的問題越發明顯。由國家相關部門牽頭,聯合各行業巨頭共同建立起一套完整、統一的行業規範是很有必要的。或許未來我們還将看到更多類似平台或者準則的建立,很多目前存在的安卓生态問題将得到規範,安卓用戶長期诟病的問題也将得到進一步緩解。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved