如何看待泰爾實驗室嘗試建立安卓統一推送標準UPS?

我已經在下面寫上了詳細內容,請各位仔細閱讀以後再答題好嗎?

2017-10-16 統一推送聯盟在京正式成立

http://mp.weixin.qq.com/s?__biz=MzA4Mjk1MTcyNA%3D%3Dmid=2650865394idx=1sn=1d36a3b3306d731f94911f8b23ab53e8#wechat_redirect

安卓統一推送標準 已取得階段性成果

2017-06-01 泰爾終端實驗室

在各方配合下,統一推送取得階段性成果

安卓生態圈一直為App開發者提供了一個開放的運行環境,用於實現各種創新的想法,然而相應地也產生了的性能問題。消息推送是App運營的重要一環,為了優化消息推送成功率,降低電量和流量消耗,系統級的推送服務顯得尤為重要。同時,隨著安卓8.0版本的發布,未來App的後台活動將受到更嚴格的管控,消息推送將只能通過系統級推送通道下發。目前,各大手機廠商也已經提供或者正在研發基於各自系統平台的系統推送服務解決方案。

各個終端廠商的系統級推送通道不可避免的存在差異性,因此,開發者同時接入、維護多條推送通道存在著一定的困難。在此背景下,泰爾終端實驗室聯合包括華為、OPPO、vivo、小米、三星、魅族、金立、努比亞、谷歌、百度、阿里巴巴、騰訊、個推、極光等國外內主要相關企業共同制定安卓統一推送服務(Unified Push Service,簡稱UPS)技術標準,旨在為國內的消息推送服務建立統一的標準,為終端用戶提供更好的手機使用體驗,為應用開發者更好解決消息推送需求,並取得了階段性成果。

統一推送的架構

關於未來統一推送的架構體系,各方達成一致:未來將由終端廠商提供系統級推送服務(類似APNS的唯一推送通道),確保App的推送消息接收;相應的不再允許各App在後台保留常連接,降低終端能耗、提升用戶體驗。與此同時,各終端廠商實現推送通道介面和功能統一,方便開發者接入。另外,第三方推送服務商原則上也遵循統一推送的標準,保證服務一致性,降低開發者學習成本。

控制推送服務亂象

推送消息對於App開發者提供了很大便利,已經成為了確保應用活躍的重要手段;然而,與此同時越來越多的亂象也隨之出現。例如基於推送消息的「保活」、「相互拉起」等行為,給用戶和生態造成了負面的影響。另外,各種自定義推送消息的泛濫也對手機通知欄的展示造成了影響,破壞了界面的統一性。

在統一推送的標準中,各方針推上述情況達成了共識,為了確保生態的質量,對於消息推送會增強管理。例如,通過推送消息的相互拉起明確不被允許,利用透傳消息拉起App的行為也被禁止。同時,為了保證用戶體驗,原則上也不支持推送消息的定製化(包括消息樣式的定製化以及提示音的個性化,通知欄圖標不允許使用外鏈),保證消息推送的公平性和用戶界面的一致性。

減少對用戶打擾

目前, 大量的「垃圾推送消息」對用戶的打擾遭到了大量用戶詬病。類似於「垃圾簡訊」,過度的消息推送不僅對用戶造成了打擾,而且也導致有用消息被淹沒在消息的海洋里。各企業為了消息觸達用戶不得不增加消息推送,造成惡性循環,嚴重破壞了生態。因此,對於消息推送的管理和引導已經十分必要。

在統一推送的標準中,為了幫助開發者提高推送的準確性,在推送通道中定義了批量推動消息的信息反饋機制,在消息過期後將每次推送的最終情況(展示、拒絕或其他類型錯誤)返回給開發者,幫助開發者不斷根據反饋信息提升消息推送的準確度。同時,對於濫用推送消息也將進行限制,對於用戶點擊率很低或用戶消息屏蔽較多的App,可能採取包括限制推送條數、拉入黑名單等懲罰性措施。引導開發者注重用戶體驗,實現凈化安卓生態的目標。

減少開發者負擔

統一推送對於開發者的一個福音是,由於推送API的統一,未來各終端廠商將提供系統級API實現推送功能(即App無需嵌入各通道SDK)。考慮到實際情況,為了兼容已有機型,手機端還是會提供一個簡單的SDK,判斷手機是否支持統一推送。若支持則可以直接調用ROM API,否則按照當前已有方式進行推送(為了適配已有機型還需要保留推送SDK)。隨著手機的自然更替,未來支持統一推送的終端數目會不斷更加,從而逐步實現統一推送的平滑演進。

下一步工作與展望

推送通道的暢通對於APP開發者十分重要,為了保障廠商推送通道的服務能力,泰爾終端實驗室將聯合各個企業探討推送通道的技術要求和測試方法,確保推送通道穩定提供服務。同時,泰爾終端實驗室還將聯合各相關企業成立「中國統一推送聯盟」,邀請相關企業和同行共同參與、坦誠交流,儘快推送相關工作取得更大的進展,打造更好的安卓生態,促進我國移動互聯網產業取得更大的發展。


其實最好還是能統一走gcm推送

gcm推送挺好的

cgss從來不在後台工作,卻能及時給我活(ke)動(jin)時間到的信息,就是gcm的功勞

微信已經支持gcm了,我現在微信從來都不在後台,照樣及時收到消息

其實完全可以考慮用gcm的技術,只是統一推送的伺服器換個質量好點的,雖然gcm不用梯子就能用但是那伺服器延遲有點大

最好還是谷歌回歸中國,讓大家用上原汁原味的安卓

另外附上一些毒瘤大廠的信息

tx是會按照安卓標準開發的,QQ音樂團隊的輕聽完全按照MD風格標準開發,說明tx知道怎麼按照安卓標準來(誠心安利輕聽,作為日常播放器很給力,歌詞和封面匹配也很全)

百毒方面堪憂,百毒程序猿不會寫drawable,點擊效果都還在用碘酒圖做,按照這技術水平怕是懸(我在做百度貼吧超精簡版時想順帶做個水波紋點擊效果,發現居然找不到按壓對應的drawable,最後在資源文件夾里發現了含有_1後綴的按壓效果碘酒圖)

阿里雖然不怎麼喜歡按照標準來,但是優化絕對是給力的,能讓80m的淘寶跑的跟個20m的app一樣快已經算很棒了,阿里主要是功能太腫,不過至少阿里的程序猿水平我相信沒問題,淘寶和支付寶的優化都已經跟上來了(支付寶主要是到處拉屎比較噁心,限制拉屎許可權後瞬間變得純凈)

網易估計是實力還有問題,一直覺得丁磊養豬養的自己都快成豬了(網易觀點:出了bug不是網易的錯,是發現bug的玩家的錯,不了解的可以去微博找陰陽師業原火事件)

華為是完全有實力的畢竟能把emmc優化成ufs,就看華為願不願意搞,不過華為連疏油層都懶得搞,我看還是很懸(emui畢竟更新比較緩慢,甚至客服建議降級)


中國特色的問題,中國特色的解決方案。

因為GMS缺失,形成了中國特色的Android ROM生態,高度定製化,廠商中心化(大廠商憑藉巨大的用戶量擁有主導地位)。

因為GCM缺失,形成了中國特色的安卓應用生態,後台混亂,高度自閉(國產應用幾乎佔據全部市場,也幾乎只服務國人),全家桶橫行(當然也不完全是GCM的原因,應用自己的利益也是很重要的)。

問題的根本在於這樣一片巨大的市場上,缺乏一個具有強制力的角色來進行規範。之前Google既沒有能力也沒有意願去強制規範Android生態,更何況也不可能直接影響國內。廠商雖然在自己的地盤裡說了算數,但是管不了別家的。消費者更是毫無發言權。前段時間綠色守護作者發起了綠色應用公約行動,然而這只是一個道德公約,力量也很有限。

最後的最後,如果真的靠這樣一種行政力量的強制力來推動問題的解決,真的是有一種黑色幽默的感覺。人為的從Android-Google生態中割裂出來,再利用割裂的範圍與行政強制力範圍的重合解決問題。會不會有一種另立中央,自己欽定自己的感覺呢?

說句題外話,這個動作讓我想起了很多廠商曾經的行為,比如魅族已經死了的smartbar。明明用安卓三鍵就好了,偏不用。先給用戶製造問題,然後再解決問題。看這個功能厲不厲害,是不是直戳痛點?類似的還有鎚子的揮手清理角標之類的,我們已經見識了太多中國特色。


在電信領域,這是很常見的玩法。

大家可以想想我們用的網路設備有那麼多生產商,但你很少需要擔心設備之間不兼容。這是因為設備的介面是按照統一的規範來做的,不兼容規範的設備拿不到入網證。。

在電信領域,要對一個新的業務形成規範,通常的玩法是各廠商先提出對自己有利的提案,提交給一個權威組織(比如3GPP)。然後大家互相吵,最後達成妥協,形成標準,大家都按標準執行。

因此在形成規範的過程中,【廠家消極對待是最差的手段】

因為如果你不提,別人是不會考慮你的利益的。一旦形成規範,而且這個規範被權威部門(比如工信部)認可了,就只能被動接受了。

這件事里,最熟悉這套玩法的就是華為。考慮到華為在電信領域的影響力,只要華為堅持,這事成功的幾率是很大的。不過以我對華為的了解,如果沒有高層的支持,靠底層自己推動是很難堅持下去的。

安卓的推送是個老大難問題,我現在做的app里就同時集成了3家的推送。真心希望這事能搞成。

……

利益相關,作者是前華為員工。


在接受Google短期內不能返回中國的前提下,這對安卓用戶絕對是一個福音

即便Google返回中國,現在還能管理住各個手機廠商嗎?

撇開Google,中國手機廠商聯合起來做一個公約,比相互之間撕來撕去強多了


為什麼強制後台?

為什麼相互喚醒?

這麼多年了還拎不清嗎?

國產毒瘤們只是拿後台推送做借口而已

只要年底KPI上考核的數字還有「日活」這個指數

你指望那群垃圾毒瘤丟開年終獎跟你講良心?

國內安卓環境,本身根就是爛的

對此我持悲觀態度


廢紙一張

騰訊、阿里、百度系的app根本不會去遵守。

這張紙不是強制性。


你們喜歡袋住先(UPS)即便這隨時變成袋一世?

我是寧願真P選了(GCM)。


Andorid手機耗電不好用的核心問題是應用缺乏監管,國外由google play嚴格控制質量,國內應用市場碎片化太嚴重,指望統一嚴格的上架標準,也就只能呵呵了。

沒有監管的應用為了各種kpi,必須不顧一切的保活,利用推送互相拉起,保證留存。手機廠商也只能辣手無情,各種殺進程。所有廠商在這一點上利益是一致的,寧願不管應用如何生存,也要保證手機續航,才能更好的賣手機。所以,現狀是沒有系統級的推送,應用很痛苦。

從這一點上來看,UPS還是一件利國利民的好事。

內部消息,伺服器是有能力大廠自己建,沒能力小廠第三方幫著建,蛋糕按照手機市場份額來分,大家都有肉吃。面對開發者介面是統一的,更多的功能做到手機rom里,sdk會很小,這麼看,也是開發者的福音。

GCM入華太飄渺了,還是把UPS做成比較靠譜。


其實吧,MIUI上已經有mipush了……

然後,我對華為有一種不可名狀的不信任感,而且這件事牽頭的企業里有華為……

所以,我還是在能正常訪問Google的情況下選擇GCM+mipush吧!

表示對這種安卓版的五嶽結盟事件表示不信任!完全不信任!

祝各位玩兒的愉快~大不了以後只用Lineage OS~


U.....UPS?不……不間斷電(tui)源(song)么……[絕對沒錯吧


MIUI用戶表示無所謂。現在大多常用軟體都支持米push,挺好的。


看了其它的答案,我覺得還是自問自答一下吧。

首先,我認為UPS對於手機廠商和軟體廠商來說是雙贏的。現在的國產(行)的系統對APP的後台自啟和關聯啟動限制很多,導致一些必要的通知也無法送達,十分影響安卓系統的體驗。而UPS在我看來是手機廠商和軟體廠商的和解,是國內安卓走向流暢的重要的一步。應用能夠在退出前台休眠後繼續收到消息,而不用後台偷偷運行、自啟(其實在UPS建成以後,無論應用是不是在運行,或者會不會自動休眠,手機廠商也可以強制體眠應用,因為UPS的推送並不會喚醒應用)。

在問題描述中,有這麼一句話,「未來將由終端廠商提供系統級推送服務」,這是什麼意思呢?意思是小米手機的推送由小米的伺服器負責,華為手機的推送由華為的伺服器負責,UPS將小米推送、華為推送等推送的標準統一,極大方便了開發者的開發與維護。但UPS並沒有統一伺服器,所以說那些說有MIPUSH、不信任華為的人可以先把問題描述看完了再答題好嗎?

至於說為什麼不用FCM(GCM)的人,您真的可以歇著了。一直以來iOS因為其嚴格的審核機制,使得在國內有著流暢、易用(拋開本地化來說)的大眾印象,並且強制使用蘋果自家的推送。而國內,由於谷歌被牆,導致國內安卓應用野蠻生長。就算現在谷歌入華,大家手機都安上Google Play,然而就在Play上也有一大堆軟體不走FCM。谷家不可能也不會強制應用使用FCM。

一直以來,安卓圈就流行搞機,那請各位想一想,有多少搞機其實是在折騰那些毒瘤應用呢?作為一個安卓愛好者,我希望安卓有一天即使不搞機也能像蘋果那樣,直接買來用就好,不用操心什麼毒瘤,希望安卓不僅是玩機友好,可定製度高,也能對普通用戶友好,不用操心毒瘤軟體。

UPS讓我看到了安卓的希望。

匆忙寫就,不足之處請指出。

利益相關:花粉


Google Play Service的壟斷地位本身引起了開源界的不滿,有開發者做出了microG Project,等實施了看看,是不是國外一開源,國內就自主研發的產物。


首發在我同名微信公眾號。

國內安卓卡頓問題有望從根源上解決,工信部將統一推送標準

特地強調了下【國內安卓】卡頓的問題,這個和愛國不愛過、是否地域歧視沒有關係。

玩機達人們相比都知道,同樣一個app,國內應用商店下載的版本,和GooglePlay里下載的是不一樣的。

據我了解,主要差別在這3點:

1、GooglePlay里的應用不會申請一大堆無用許可權

2、GooglePlay的應用push走谷歌底層服務GCM(Google Cloud Messaging),不會後台常駐流氓進程

3、不會應用自己彈出更新提醒,統一走GooglePlay更新

大家可能會覺得眼熟,卧槽,這不就和蘋果一樣?!

是的,谷歌有這套技術,但是國內谷歌服務全盤閹割了,其實早些年互聯網剛普及的時候,百度還在創業,谷歌就已經在國內風生水起了,我記得2011年我的第一台安卓手機是HTC G7,就內置谷歌服務,GoogleTalk和Gmail是我當時非常喜歡的應用。

然而很多你懂的原因,涉及國家大事和態度問題,谷歌退出了中國大陸市場。

所以現在的安卓手機,通常情況下,國行都是不會有谷歌服務的,也就無法系統級實現統一的推送服務。

蘋果手機的APNS(Apple Push Notification service),可以保證應用不需要保留後台,由蘋果伺服器和你的手機統一保持長連接,相關消息統一由蘋果伺服器告訴你的手機,然後你的手機再告訴具體的app,有一條消息送達到你這裡了。

假設沒有系統級的統一推送管理,就像國內的安卓手機一樣……

那麼,每個app都要自己和自己家的伺服器建立長連接,如果你安裝了20個app,基本上手機要保持20個通信長連接。

這些長連接雖然自己考慮到了耗電問題、不會全天24小時隨時都活躍,但是哪怕每一個都做了自己的周期喚醒,一旦裝得app多了,手機同樣24小時不能休息。

如果是系統統一管理的,cpu就能得到規律地喚起和休息。如果各自為戰,那麼cpu基本上隨時都會被某個app吵醒,根本不能睡好覺。

各種安全軟體還會告訴你誰誰誰常駐後台快殺後台,然而每個app基本上都做了流氓喚醒,你切換網路、打個電話、手機解鎖,這些行為都會拉起被殺死的進程和服務。

本來這些功能是谷歌開放給開發者,做實用功能的,比如手機解鎖後喚醒,可以用來做解鎖後桌面天氣widget特效啊,但大家一樣可以用這個來流氓常駐後台。

為了保持推送,各種常駐後台又是必須的,不然消息無法送達用戶啊。

可能有人會說,消息推送那麼多,app是會被卸載的,太打擾了。

這種只是自我主義的思維罷了。

實質上,業內數據無不說明,推送能有效拉起用戶活躍和留存。

這就是為什麼百度、360天天給你推垃圾廣告和新聞的原因,你打開了,人家有錢賺。

不管是口頭上說說的,還是會真正落實的,有關部門的這個決定還是相對有深遠意義的。

最後說個結論,怎麼從根本上解決卡頓呢?

1、谷歌全面入華,谷歌服務取代國內各家廠商底層服務,完成谷歌系統級推送的回歸,解決卡頓問題,當然這是不可能的,現在入華也晚了,沒人願意把利益這麼送出去。

2、國家干預,做一套自己的全國強制推行的推送服務。

我忽然想到了當年曹操問賈詡,應該立誰為太子,賈詡擅自保,不肯說,被曹操逼著不得不說說:你看看袁紹和劉表的紅星系統……


我看到這些加入廠商,心理是懵逼的....

谷歌真的不是「被」加入么?

有gcm要這玩意幹嘛?

還有,這東西和華為在發布mate9時順手提到的中國安卓綠色聯盟有沒有關係啊?那聯盟就發布會提一嘴就沒下文了...

我也知道國內gcm被牆了(更正:評論區提示不是被牆了,是沒有框架),但感覺google沒有什麼動機來參加這麼個聯盟....

順便要是能搞成他所說的那樣,其實對整個手機環境是好事。但我比較擔心的是,這其實是大頭想壟斷一波,輿論上造的好聽一些,然後之後再收費什麼的,這樣就沒有意義了


雖然感覺是好事來的。

但………………

一種脫了褲子放屁的感覺油然而生 …………


中國接受不了信息都要在國外伺服器走一遍,所以就把谷歌給牆了,畢竟不懷好意的資本主義列強的服務。。。

國家帶頭建推送服務,這不正可以體現社會主義的優越性嗎


搞個毛的 UPS,要發快遞嘛,

GCM 趕緊入華吧。

(吐槽下,華為推送真的好垃圾,各種坑,離小米推送差的不是一點點)


得奔走相告,自家app做起典範,馬上給領導彙報


聽起來是好的,但是現有的第三方ROM怎麼辦,國外的ROM怎麼辦?這還不是重點,萬一這個推送服務真的成了國內標準,以前好歹國內的APP放到國外不管怎麼推送好歹還是能工作的,但現在國內外APP分別放到不同的環境里就完全沒有了推送能力,這感情就是地理隔離啊,會產生新的物種出來的啊!說白了就會讓國內的生態圈徹底獨立出來,而且會越來越畸形。不是我危言聳聽,就現在來看,BAT三家的APP有幾個遵守MD規範的?一味的「仿蘋果」真的就那麼好看?當然這是扯遠了……

總之我不看好國內的APP為了所謂的「流暢省電」自研推送通道,我覺得更可能留下後門或者霸王條款(你用我們的推送就要繳納XX費用,不用就讓你的APP沉默)說到底,只要一個推送服務的話,讓APP在後台運行沒什麼大不了的,壞處最多就是可能被殺然後延遲收到消息,真的不會影響多少系統性能。問題是,總有那麼些個廠家別有用心打著推送的名義干其他的事情,在你的後台呼朋引伴爭搶地盤,這才是讓你手機變卡的原因。

歸根結底,沒有一個有效的監管力度存在,那研究什麼推送通道都意義不大,因為這些流氓APP原本的目的壓根也不是為了推送。比起這個通道我寧願相信綠色公約了——單獨的流氓我們可以用各種手段制裁他,但是流氓們合起伙來想要堂堂正正的耍流氓,這樣就顯得比較棘手了。

————————————————————————

更新,首先你要知道,互相調起的目的到底是不是為了推送。為什麼要互相調起?這其實是為了應對當時越來越多「安全軟體」的防自啟功能。最開始國內APP的喚醒機制還比較清真,通過監聽系統廣播即使後台的進程被殺死了也能夠比較及時的回到後台。好,等到後來360在手機上被推廣開了,基本到了必備軟體的地步,而其主要的功能就有防自啟,防開機啟動一類,加上安卓的發展對後台的管理越來越嚴格,手機廠商也紛紛在ROM里內置了安全中心,想通過這麼簡單的方法在後台留住肯定是行不通了,所以誕生了這種互相調用的喚醒方式。也就是說,他們互相調起目的是為了防止我禁用他們的自啟行為?這是大逆不道啊?再說你把BAT的消息通知都關掉他們就不調起了?naive啊!再看看正在運行的服務,為什麼一個推送服務的進程會佔用上百兆的內存?就算上緩存的進程也不至於這麼大吧?我不知道他們在後台都做了些什麼,我知道的是我的手機性能比較差,只要BAT的喚醒鏈在我的後台開始執行,我的手機就會變得發熱並且變卡。這,難道僅僅是為了推送消息?

然後還有人跟我說同時實行兩套推送服務。聽起來很可行,但是這些廠家推動新的推送服務是要有利益在裡面的,而不是做慈善,更不是為了什麼國內的安卓生態,這麼多年都過來了怎麼就突然抱團一起變好人了?那麼,我為了使利益最大化,我肯定希望我的推送服務被最大化的推廣,把原有的GCM擠下去是最好的,那我為什麼還要提供一個沒人用的我的敵人的推送手段?沒理由也沒利益啊,不信看看阿里對UWP是什麼態度,你是我的敵人,而且用的人少利潤少,我就不提供你的服務。換成GCM不也一樣嗎?

關於這個新的推送服務,題主關於他的描述都算是比較正面的。但是實際上推行起來就不一定是那回事了,他可能成為一個系統級的真正的流氓干盡原本小流氓的事,再把其他不肯加入他們的都幹掉,畢竟這可是系統級的服務,許可權比APP要大得多。不過轉念一想,要是真的這樣也就不用那些小流氓們各自耍了,也沒必要在後台分別喚醒自家了,應該對流暢度還是有點提升的。


推薦閱讀:

Kindle 看書時可以用詞典取詞的嗎?
如何看待 @李楠 近期發表的系列關於 Back 鍵的言論?
小米note開發版MIUI,安卓6.0!怎麼安裝Xposed 框架?
電話本中的「個人收藏」有沒有用處?
如何評價諾基亞的 Nokia X 系列 Android 手機?

TAG:小米科技 | 魅族科技 | 華為 | Android | 三星電子Samsung |