Android保活從入門到放棄:乖乖引導(dǎo)用戶加白名單吧(附7大機型加白示例)
Posted on 2020-06-24 13:55 Jack Jiang 閱讀(619) 評論(0) 編輯 收藏1、引言
IM在Android上的保活問題經(jīng)常在即時通訊網(wǎng)的論壇和技術(shù)群里被討論,自從Android 8.0后系統(tǒng)大大降低了后臺運行應(yīng)用的保活容忍度(詳見《Android P正式版即將到來:后臺應(yīng)用保活、消息推送的真正噩夢》),保活從黑科技橫行的時代進入了技術(shù)蠻荒階段,真要實現(xiàn)保活,技術(shù)難度越來越大。

不過話說回來,既然用黑科技進行保活是Andriod技術(shù)的逆潮流,那何不回頭是岸,做個“良民”?
本文將以某款線上的IM產(chǎn)品為例,介紹它是如何引導(dǎo)用戶在多款主流機型上加白名單的,并分享了該款I(lǐng)M中已制作完成的多達7款主流Andriod機型的詳細加白FAQ頁面資源(含完整HTML+圖片),方便您進行參考、學(xué)習(xí)和研究,希望能為你的應(yīng)用開發(fā)帶來幫助。
特別申明:本文示例中的資源來自某款真實的IM產(chǎn)品,僅供學(xué)習(xí)和研究,請勿用作非法用途,如有侵權(quán),請告之于我。
學(xué)習(xí)交流:
- 即時通訊/推送技術(shù)開發(fā)交流5群:215477170[推薦]
- 移動端IM開發(fā)入門文章:《新手入門一篇就夠:從零開發(fā)移動端IM》
本文已同步發(fā)布于“即時通訊技術(shù)圈”公眾號,歡迎關(guān)注:

▲ 本文在公眾號上的鏈接是:https://mp.weixin.qq.com/s/JqWloZLBYicpxElVL_HKYw ,原文鏈接是:http://www.52im.net/thread-3033-1-1.html
2、Android保活,變的越來越不可能了
IM產(chǎn)品在Android上的保活問題從早期的系統(tǒng)版本到現(xiàn)在,從未有人停止過嘗試。即時通訊通訊網(wǎng)也隨著Andriod系統(tǒng)版本的升級,持續(xù)整理了很多篇相關(guān)文章,比如下面這些(文章的順序按照Android系統(tǒng)的版本從低到高)。
- 《應(yīng)用保活終極總結(jié)(一):Android6.0以下的雙進程守護保活實踐》
- 《應(yīng)用保活終極總結(jié)(二):Android6.0及以上的保活實踐(進程防殺篇)》
- 《應(yīng)用保活終極總結(jié)(三):Android6.0及以上的保活實踐(被殺復(fù)活篇)》
- 《Android進程保活詳解:一篇文章解決你的所有疑問》
- 《Android P正式版即將到來:后臺應(yīng)用保活、消息推送的真正噩夢》
- 《全面盤點當前Android后臺保活方案的真實運行效果(截止2019年前)》
- 《應(yīng)用保活終極總結(jié)(一):Android6.0以下的雙進程守護保活實踐》
- 《應(yīng)用保活終極總結(jié)(二):Android6.0及以上的保活實踐(進程防殺篇)》
- 《應(yīng)用保活終極總結(jié)(三):Android6.0及以上的保活實踐(被殺復(fù)活篇)》
- 《Android進程保活詳解:一篇文章解決你的所有疑問》
- 《Android P正式版即將到來:后臺應(yīng)用保活、消息推送的真正噩夢》
- 《全面盤點當前Android后臺保活方案的真實運行效果(截止2019年前)》
上面這些文章,我們可以看到,自從Android 8.0(即Andriod P)以后,IM以及其它需要在后臺保活的產(chǎn)品,存活難度越來越高,黑科技幾乎都不起作用了。
于是,一些技術(shù)從牛們只能從更深的Android系統(tǒng)層面嘗試突破系統(tǒng)的保活限制,比如這兩篇:《史上最強Android保活思路:深入剖析騰訊TIM的進程永生技術(shù)》、《Android進程永生技術(shù)終極揭密:進程被殺底層原理、APP應(yīng)對被殺技巧》。
正如上面兩篇文章,為了跟系統(tǒng)作斗爭,可謂斗智斗勇。但Android系統(tǒng)的歷史進程終究無人能阻擋,越來越嚴格的保活限制已經(jīng)是Android官方及各大手機廠商的共識。
好吧,之前費盡心機折騰的各種黑科技,如今就像浮云一樣。。。

3、死磕保活?別做夢了,回頭是岸
正如上節(jié)所述,鑒于Andriod保活變的越來越不可能,很多原本靠黑科技保活的產(chǎn)品,開始重新審視保活技術(shù)實現(xiàn),到底是把保活黑科技這條路走到黑,還是回歸Android官方最佳實踐(乖乖引導(dǎo)用戶手動設(shè)置白名單)?
我個人認為,后者是保活技術(shù)發(fā)展的必然結(jié)果,就像之前分享的這篇文章里所做的嘗試一樣:《2020年了,Android后臺保活還有戲嗎?看我如何優(yōu)雅的實現(xiàn)!》,規(guī)范地引導(dǎo)用戶“加白”。
放棄“黑科技”,并不意味著技術(shù)不行,回歸“良民”,反而變的一身輕松。

4、調(diào)用系統(tǒng)代碼引導(dǎo)用戶加白名單,也不完美
之前整理的《2020年了,Android后臺保活還有戲嗎?看我如何優(yōu)雅的實現(xiàn)!》一文,是按照不同的機型,自動適配代碼并在代碼中調(diào)用系統(tǒng)的加白名單設(shè)置功能。
比如像下面這樣的代碼調(diào)用:

(▲ 以下代碼引用自《2020年了,Android后臺保活還有戲嗎?看我如何優(yōu)雅的實現(xiàn)!》)
會彈出這樣一個窗口:

這個方法確實不錯,但因為機型不同、同機型的ROOM版本不同,代碼的兼容處理,可能會相當復(fù)雜,所以方法雖好,但也并不能一勞永逸的解決所有問題。
5、應(yīng)用內(nèi)提供更多機型的“加白”FAQ幫助,是一個補充辦法
正如上節(jié)所示,調(diào)用系統(tǒng)代碼引導(dǎo)用戶加白名單確實算的上“優(yōu)雅”,但在不同的機型、同機型的不同系統(tǒng)版本上,可能差異很大,代碼兼容性是個頭疼的問題,總之這不是個百分百完美的辦法。
這就需要一個補充手段,比如我們可以針對大量不同的機型,針對它的最行或最常用系統(tǒng)版本,在應(yīng)用內(nèi)以FAQ幫助網(wǎng)頁的方式,為用戶提供幫助。
比如可以在手機里打開像下面這樣FAQ網(wǎng)頁頁面:

至少能在調(diào)用系統(tǒng)代碼無法實現(xiàn)的情況下,可以讓用戶自主找到解決問題的辦法。而這便是本文要分享,下節(jié)內(nèi)容會以一個市面上做的比較好的IM應(yīng)用為例,為你提供一個完整示例。
6、一個完整的“加白”FAQ幫助示例
最近發(fā)現(xiàn)的一款市面上的IM應(yīng)用(此產(chǎn)品跟即時通訊網(wǎng)無任何關(guān)系,僅僅是作為技術(shù)研究參考對象而已),它內(nèi)置的“加白”FAQ幫助就很完善。
以下是從該款I(lǐng)M中截下來的圖:

以下是該款I(lǐng)M應(yīng)用中的運行演示視頻(點此打開視頻鏈接):
目前該應(yīng)用中FAQ幫助已覆蓋7款主流Andriod機,以下是完整示例頁面鏈接:
- 1)如何解決華碩手機收不到消息提醒?(手機里查看,效果更佳)
- 2)如何解決 HTC 手機收不到消息提醒?(手機里查看,效果更佳)
- 3)如何解決華為手機收不到消息提醒?(手機里查看,效果更佳)
- 4)如何解決小米手機收不到消息提醒?(手機里查看,效果更佳)
- 5)如何解決 OPPO 手機收不到消息提醒?(手機里查看,效果更佳)
- 6)如何解決三星手機收不到消息提醒?(手機里查看,效果更佳)
- 7)如何解決 vivo 手機收不到消息提醒?(手機里查看,效果更佳)
可以看到,這款I(lǐng)M里的“加白”FAQ做的還是比較細、覆蓋的機型也比較典型, 如果你有類似的想法或需求,完全可以參考這款產(chǎn)品的實現(xiàn)。尤其在一些特定的場景(比如企業(yè)內(nèi)部的IM等)下,這種方式還是能解決大部分終端用戶的問題的。
7、覆蓋7款主流機型的“加白”FAQ頁面靜態(tài)資源(附件下載)
我整理了上節(jié)中提到的這款I(lǐng)M產(chǎn)品中的全部“加白”FAQ幫助頁面靜態(tài)資源,覆蓋7款主流Andriod機型,如果你也需要同樣的東西,可以參考這份完整的示例實現(xiàn),打包到手機中使用之。
以下是這份靜態(tài)資源示例的內(nèi)容(圖太長,已截掉了一部分):

以下是這份靜態(tài)資源示例的打包附件:
請從原文附件中下載:http://www.52im.net/thread-3033-1-1.html
附錄:更多精品資源匯總
[1] 精品源碼下載:
《Java NIO基礎(chǔ)視頻教程、MINA視頻教程、Netty快速入門視頻 [有源碼]》
《輕量級即時通訊框架MobileIMSDK的iOS源碼(開源版)[附件下載]》
《開源IM工程“蘑菇街TeamTalk”2015年5月前未刪減版完整代碼 [附件下載]》
《微信本地數(shù)據(jù)庫破解版(含iOS、Android),僅供學(xué)習(xí)研究 [附件下載]》
《NIO框架入門(四):Android與MINA2、Netty4的跨平臺UDP雙向通信實戰(zhàn) [附件下載]》
《NIO框架入門(三):iOS與MINA2、Netty4的跨平臺UDP雙向通信實戰(zhàn) [附件下載]》
《NIO框架入門(二):服務(wù)端基于MINA2的UDP雙向通信Demo演示 [附件下載]》
《NIO框架入門(一):服務(wù)端基于Netty4的UDP雙向通信Demo演示 [附件下載]》
《用于IM中圖片壓縮的Android工具類源碼,效果可媲美微信 [附件下載]》
《高仿Android版手機QQ可拖拽未讀數(shù)小氣泡源碼 [附件下載]》
《一個WebSocket實時聊天室Demo:基于node.js+socket.io [附件下載]》
《Android聊天界面源碼:實現(xiàn)了聊天氣泡、表情圖標(可翻頁) [附件下載]》
《高仿Android版手機QQ首頁側(cè)滑菜單源碼 [附件下載]》
《開源libco庫:單機千萬連接、支撐微信8億用戶的后臺框架基石 [源碼下載]》
《分享java AMR音頻文件合并源碼,全網(wǎng)最全》
《微信團隊原創(chuàng)Android資源混淆工具:AndResGuard [有源碼]》
《一個基于MQTT通信協(xié)議的完整Android推送Demo [附件下載]》
《高仿手機QQ的Android版鎖屏聊天消息提醒功能 [附件下載]》
《高仿iOS版手機QQ錄音及振幅動畫完整實現(xiàn) [源碼下載]》
《Android端社交應(yīng)用中的評論和回復(fù)功能實戰(zhàn)分享[圖文+源碼]》
《Android端IM應(yīng)用中的@人功能實現(xiàn):仿微博、QQ、微信,零入侵、高可擴展[圖文+源碼]》
《仿微信的IM聊天時間顯示格式(含iOS/Android/Web實現(xiàn))[圖文+源碼]》
《Android版仿微信朋友圈圖片拖拽返回效果 [源碼下載]》
[2] 精品文檔和工具下載:
《計算機網(wǎng)絡(luò)通訊協(xié)議關(guān)系圖(中文珍藏版)[附件下載]》
《重磅發(fā)布:《阿里巴巴Android開發(fā)手冊(規(guī)約)》[附件下載]》
《阿里技術(shù)結(jié)晶:《阿里巴巴Java開發(fā)手冊(規(guī)約)-終極版》[附件下載]》
《基于RTMP協(xié)議的流媒體技術(shù)的原理與應(yīng)用(技術(shù)論文)[附件下載]》
《獨家發(fā)布《TCP/IP詳解 卷1:協(xié)議》CHM版 [附件下載]》
《良心分享:WebRTC 零基礎(chǔ)開發(fā)者教程(中文)[附件下載]》
《經(jīng)典書籍《UNIX網(wǎng)絡(luò)編程》最全下載(卷1+卷2、中文版+英文版)[附件下載]》
《音視頻開發(fā)理論入門書籍之《視頻技術(shù)手冊(第5版)》[附件下載]》
《國際電聯(lián)H.264視頻編碼標準官方技術(shù)手冊(中文版)[附件下載]》
《Apache MINA2.0 開發(fā)指南(中文版)[附件下載]》
《網(wǎng)絡(luò)通訊數(shù)據(jù)抓包和分析工具 Wireshark 使用教程(中文) [附件下載]》
《最新收集NAT穿越(p2p打洞)免費STUN服務(wù)器列表 [附件下載]》
《高性能網(wǎng)絡(luò)編程經(jīng)典:《The C10K problem(英文)》[附件下載]》
《即時通訊系統(tǒng)的原理、技術(shù)和應(yīng)用(技術(shù)論文)[附件下載]》
《技術(shù)論文:微信對網(wǎng)絡(luò)影響的技術(shù)試驗及分析[附件下載]》
《華為內(nèi)部3G網(wǎng)絡(luò)資料: WCDMA系統(tǒng)原理培訓(xùn)手冊[附件下載]》
《網(wǎng)絡(luò)測試:Android版多路ping命令工具EnterprisePing[附件下載]》
《Android反編譯利器APKDB:沒有美工的日子里繼續(xù)堅強的擼》
《一款用于P2P開發(fā)的NAT類型檢測工具 [附件下載]》
《兩款增強型Ping工具:持續(xù)統(tǒng)計、圖形化展式網(wǎng)絡(luò)狀況 [附件下載]》
《Android保活從入門到放棄:乖乖引導(dǎo)用戶加白名單吧(附7大機型加白示例)》
[3] 精選視頻、演講PPT下載:
《美圖海量用戶的IM架構(gòu)零基礎(chǔ)演進之路(PPT)[附件下載]》
《開源實時音視頻工程WebRTC的架構(gòu)詳解與實踐總結(jié)(PPT+視頻)[附件下載]》
《QQ空間百億級流量的社交廣告系統(tǒng)架構(gòu)實踐(視頻+PPT)[附件下載]》
《海量實時消息的視頻直播系統(tǒng)架構(gòu)演進之路(視頻+PPT)[附件下載]》
《YY直播在移動弱網(wǎng)環(huán)境下的深度優(yōu)化實踐分享(視頻+PPT)[附件下載]》
《QQ空間移動端10億級視頻播放技術(shù)優(yōu)化揭秘(視頻+PPT)[附件下載]》
《RTC實時互聯(lián)網(wǎng)2017年度大會精選演講PPT [附件下載]》
《微信分享開源IM網(wǎng)絡(luò)層組件庫Mars的技術(shù)實現(xiàn)(視頻+PPT)[附件下載]》
《微服務(wù)理念在微信海量用戶后臺架構(gòu)中的實踐(視頻+PPT)[附件下載]》
《移動端IM開發(fā)和構(gòu)建中的技術(shù)難點實踐分享(視頻+PPT)[附件下載]》
《網(wǎng)易云信的高品質(zhì)即時通訊技術(shù)實踐之路(視頻+PPT)[附件下載]》
《騰訊音視頻實驗室:直面音視頻質(zhì)量評估之痛(視頻+PPT)[附件下載]》
《騰訊QQ1.4億在線用戶的技術(shù)挑戰(zhàn)和架構(gòu)演進之路PPT[附件下載]》
《手機淘寶消息推送系統(tǒng)的架構(gòu)與實踐(音頻+PPT)[附件下載]》
《如何進行實時音視頻的質(zhì)量評估與監(jiān)控(視頻+PPT)[附件下載]》
《Go語言構(gòu)建高并發(fā)消息推送系統(tǒng)實踐PPT(來自360公司)[附件下載]》
《網(wǎng)易IM云千萬級并發(fā)消息處理能力的架構(gòu)設(shè)計與實踐PPT [附件下載]》
《手機QQ的海量用戶移動化實踐分享(視頻+PPT)[附件下載]》
《釘釘——基于IM技術(shù)的新一代企業(yè)OA平臺的技術(shù)挑戰(zhàn)(視頻+PPT)[附件下載]》
《微信技術(shù)總監(jiān)談架構(gòu):微信之道——大道至簡(PPT講稿)[附件下載]》
《Netty的架構(gòu)剖析及應(yīng)用案例介紹(視頻+PPT)[附件下載]》
《聲網(wǎng)架構(gòu)師談實時音視頻云的實現(xiàn)難點(視頻采訪)》
《滴滴打車架構(gòu)演變及應(yīng)用實踐(PPT講稿)[附件下載]》
《微信海量用戶背后的后臺系統(tǒng)存儲架構(gòu)(視頻+PPT)[附件下載]》
《在線音視頻直播室服務(wù)端架構(gòu)最佳實踐(視頻+PPT)[附件下載]》
《從0到1:萬人在線的實時音視頻直播技術(shù)實踐分享(視頻+PPT)[附件下載]》
《微信移動端應(yīng)對弱網(wǎng)絡(luò)情況的探索和實踐PPT[附件下載]》
《Android版微信從300KB到30MB的技術(shù)演進(PPT講稿)[附件下載]》
《從零開始搭建瓜子二手車IM系統(tǒng)(PPT)[附件下載]》
《極光分享:高并發(fā)海量消息推送系統(tǒng)架構(gòu)演進(視頻+PPT)[附件下載]》
《微信紅包系統(tǒng)可用性設(shè)計實踐(PPT) [附件下載]》
《微信紅包數(shù)據(jù)架構(gòu)演變(PPT) [附件下載]》
《百度網(wǎng)盤千萬節(jié)點的P2P架構(gòu)設(shè)計(PPT) [附件下載]》
(本文同步發(fā)布于:http://www.52im.net/thread-3033-1-1.html)
作者:Jack Jiang (點擊作者姓名進入Github)
出處:http://www.52im.net/space-uid-1.html
交流:歡迎加入即時通訊開發(fā)交流群 215891622
討論:http://www.52im.net/
Jack Jiang同時是【原創(chuàng)Java
Swing外觀工程BeautyEye】和【輕量級移動端即時通訊框架MobileIMSDK】的作者,可前往下載交流。
本博文
歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明出處(也可前往 我的52im.net 找到我)。