Android消息推送:第三方消息推送平臺詳細(xì)解析

前言

  • 消息推送在Android開發(fā)中應(yīng)用的場景是越來越多了廊散,比如說電商產(chǎn)品進行活動宣傳往踢、資訊類產(chǎn)品進行新聞推送等等伶授,如下圖:
推送消息截圖
  • 本文將介紹Android中實現(xiàn)消息推送的第三方推送的詳細(xì)解決方案

閱讀本文前躯概,建議先閱讀我寫的文章:史上最全解析Android消息推送解決方案


目錄

目錄

1. 主流的第三方推送平臺分類

  • 手機廠商類:小米推送气堕、華為推送纺腊。
  • 第三方平臺類:友盟推送畔咧、極光推送、云巴(基于MQTT)
  • BAT大廠的平臺推送:阿里云移動推送揖膜、騰訊信鴿推送誓沸、百度云推送

2. 對比其他推送方式的特點

其他推送方式還有:C2DM、輪詢壹粟、SMS拜隧、MQTT協(xié)議、XMPP協(xié)議等等趁仙,相對于這些推送方式洪添,第三方推送方式的特點分別是:

2.1 優(yōu)點:

  1. 成本低
    上述的推送大多數(shù)是免費的,假如自己實現(xiàn)則消耗過多資源(開發(fā)成本和后臺管理幸撕、統(tǒng)計成本)
  2. 消息到達率高
    如果一個手機里有多個App使用了同一家推送服務(wù)薇组,那么這些App將共用一條消息通道,即使你家的App推送服務(wù)被殺死了坐儿,那么只要用戶打開了其他集成該推送服務(wù)的App律胀,你家的推送就能到達用戶

2.2 缺點

  1. 安全性低
    使用別人的服務(wù)器,所以你懂的貌矿。
  2. 服務(wù)會被殺死
    由于Android系統(tǒng)的機制炭菌,后臺推送 Service 會被各種主動的或是被動的行為給殺死,而服務(wù)一旦被殺死逛漫,意味著就接收不到推送消息黑低。

3. 第三方推送服務(wù)方式的特點

  • 第三方服務(wù)基本都具備免費、和到達率高的特點
  • 那么應(yīng)該如何選擇呢酌毡?我們來分別看一下第三方推送各種方式的優(yōu)點:

3.1 手機廠商推送

請記住一個潛規(guī)則:操作系統(tǒng)是不會殺死屬于自己品牌的推送服務(wù)克握。

  1. 手機廠商的推送服務(wù)在自家的手機上屬于系統(tǒng)級別的服務(wù),這意味著系統(tǒng)不會殺死自家的推送服務(wù)
  2. 比如說枷踏,Android原生系統(tǒng)是不會殺死C2DM消息推送服務(wù)菩暗,MIUI系統(tǒng)是不會殺死小米的推送服務(wù)。

當(dāng)今市場上的Android手機系統(tǒng)份額最高是MIUI系統(tǒng)旭蠕,即小米(具體排名請看http://www.umindex.com/

因為:免費停团、到達率高且在Android系統(tǒng)市場份額第一的MIUI系統(tǒng)上不被殺死。所以掏熬,如果要選擇手機廠商的推送服務(wù)佑稠,請選擇小米推送作為第三方平臺實現(xiàn)推送服務(wù)

下面一些應(yīng)用可以從側(cè)面來證明我的推斷:

  • 騰訊新聞使用的小米推送,沒有使用自己家的信鴿推送
  • 淘寶使用了自家的阿里云推送旗芬,同時還集成了小米推送
  • 百度視頻愛奇藝使用的是小米推送舌胶,沒有用自家的百度推送
  • 官網(wǎng)截圖 - 集成應(yīng)用:
集成應(yīng)用
  1. 如果希望進一步提高推送的效果,其實可以集成多個手機廠商的推送服務(wù)
  2. 比如小米渠道用小米推送疮丛,華為渠道用華為推送幔嫂,但這樣的實現(xiàn)成本會大一些

3.2 第三方平臺類

請記住一個規(guī)則:推送系統(tǒng)會共享一條推送渠道

  1. 這意味著假設(shè)你接入了友盟推送漱办,而恰好今日頭條也接入了友盟。
  2. 有一天你的App被殺死了婉烟,但這時用戶啟動了今日頭條,那么推送系統(tǒng)也就會通過共享的推送通道順便把你推送消息送達到手機上暇屋,然后還可能把你的進程也喚醒(被“彼圃活”了)。

所以說咐刨,關(guān)于如何選擇第三方平臺類的推送昙衅,推送平臺的規(guī)模效應(yīng)就很重要了。
那如何得知他們的規(guī)模和市場份額呢定鸟?按個人經(jīng)驗而涉,主要看兩點:

  • 問內(nèi)部的朋友。
  • 看推送平臺的合作客戶里有哪些大的app - 參考對應(yīng)官網(wǎng)的合作案例

3.3 BAT大廠的推送

BAT大廠其實并沒有什么優(yōu)勢联予,同時謹(jǐn)記:

  • 不要以為用了騰訊信鴿推送啼县,就能占上微信的光保證你的App永遠(yuǎn)內(nèi)部被殺死。
  • 說個題外話沸久,手機淘寶除了自家的阿里云的移動推送季眷,同時也使用其它的第三方推送平臺啊(比如友盟推送)卷胯。

4. 如何選擇第三方平臺推送服務(wù)子刮?

  • 選擇因素
    用戶群體屬性、實現(xiàn)成本窑睁、渠道

  • 具體選擇方案

示意圖

所以挺峡,大家可根據(jù)自己的使用場景來進行消息推送平臺的選擇。


5. 推送消息類別的選擇

5.1 推送消息的類別

通常第三方推送平臺都支持兩種推送消息類型:通知欄消息和透傳消息担钮。

  • 通知欄消息:該類消息在被送達用戶的設(shè)備后橱赠,直接以系統(tǒng)通知欄的形式展示給用戶

不會繼續(xù)被傳遞到App

  • 透傳消息:該類消息在被送達用戶的設(shè)備后,還會繼續(xù)傳遞到App
  1. 通過回調(diào)App的某個BroadcastReceiver的形式將消息傳遞到App內(nèi)部裳朋。然后由App決定如何處理和顯示這個消息病线。
  2. 所以透傳消息不一定會以系統(tǒng)通知欄的形式進行推送,由程序猿自定義

5.2 消息類別的區(qū)別與特點

  • 二者的區(qū)別在于:透傳消息在整個消息傳遞過程中比通知欄消息多了一步-傳遞到App
  • 通知欄消息的優(yōu)點:送達率高
    因為透傳消息在整個消息傳遞過程中比通知欄消息多了一步-傳遞到App鲤嫡,因此透傳消息就增加一些被系統(tǒng)限制的概率送挑,給系統(tǒng)殺死的概率就高一些,所以說暖眼,通知欄消息比透傳消息應(yīng)該能提供更好的送達率惕耕。

我們來看下小米推送的官方文檔描述:

  1. 在一些 Android 系統(tǒng)(如 MIUI)中,受到系統(tǒng)自啟動管理設(shè)置的限制,應(yīng)用不能在后臺自啟動
  2. 在這類系統(tǒng)中诫肠,如果在發(fā)送消息的時候?qū)?yīng)的應(yīng)用沒有被啟動司澎,透傳類消息將不能順利送達欺缘。
  3. 因此,對于對送達率要求很高的消息,建議盡量采用通知欄提醒的方式推送消息
  • 透傳消息的優(yōu)點:對消息操作程度高 & 自定義程度高
  1. 提供了對消息數(shù)據(jù)的更靈活的操縱能力。

App如果僅僅通過通知欄消息挤安,是無法接觸到消息數(shù)據(jù)本身的谚殊。

  1. 可自定義通知提醒的樣式(包括提示樣式、提示形式如聲音等等)

所以大家可以根據(jù)不同的使用場景來對推送消息類別進行選擇了蛤铜。


6. 總結(jié)


請點贊置尔!因為你的鼓勵是我寫作的最大動力!

相關(guān)文章閱讀
史上最全解析Android消息推送解決方案
Android開發(fā):最全面氢伟、最易懂的Android屏幕適配解決方案
Android開發(fā):Handler異步通信機制全面解析(包含Looper榜轿、Message Queue)
Android開發(fā):頂部Tab導(dǎo)航欄實現(xiàn)(TabLayout+ViewPager+Fragment)
Android開發(fā):底部Tab菜單欄實現(xiàn)(FragmentTabHost+ViewPager)
Android開發(fā):JSON簡介及最全面解析方法!
Android開發(fā):XML簡介及DOM、SAX朵锣、PULL解析對比


歡迎關(guān)注Carson_Ho的簡書差导!

不定期分享關(guān)于安卓開發(fā)的干貨,追求短猪勇、平设褐、快,但卻不缺深度泣刹。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末助析,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子椅您,更是在濱河造成了極大的恐慌外冀,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掀泳,死亡現(xiàn)場離奇詭異雪隧,居然都是意外死亡,警方通過查閱死者的電腦和手機员舵,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門脑沿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人马僻,你說我怎么就攤上這事庄拇。” “怎么了?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵措近,是天一觀的道長溶弟。 經(jīng)常有香客問我,道長瞭郑,這世上最難降的妖魔是什么辜御? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮屈张,結(jié)果婚禮上我抠,老公的妹妹穿的比我還像新娘。我一直安慰自己袜茧,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布瓣窄。 她就那樣靜靜地躺著笛厦,像睡著了一般。 火紅的嫁衣襯著肌膚如雪俺夕。 梳的紋絲不亂的頭發(fā)上裳凸,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天,我揣著相機與錄音劝贸,去河邊找鬼姨谷。 笑死,一個胖子當(dāng)著我的面吹牛映九,可吹牛的內(nèi)容都是我干的梦湘。 我是一名探鬼主播,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼件甥,長吁一口氣:“原來是場噩夢啊……” “哼捌议!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起引有,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤瓣颅,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后譬正,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體宫补,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年曾我,在試婚紗的時候發(fā)現(xiàn)自己被綠了粉怕。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡抒巢,死狀恐怖斋荞,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情虐秦,我是刑警寧澤平酿,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布凤优,位于F島的核電站,受9級特大地震影響蜈彼,放射性物質(zhì)發(fā)生泄漏筑辨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一幸逆、第九天 我趴在偏房一處隱蔽的房頂上張望棍辕。 院中可真熱鬧,春花似錦还绘、人聲如沸楚昭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽抚太。三九已至,卻和暖如春昔案,著一層夾襖步出監(jiān)牢的瞬間尿贫,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工踏揣, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留庆亡,地道東北人。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓捞稿,卻偏偏與公主長得像又谋,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子娱局,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,722評論 2 345

推薦閱讀更多精彩內(nèi)容