本帖最后由 昕宇789 于 2016-2-15 19:59 編輯
雖然如今安卓在5.0版本之后有了質(zhì)的飛躍,但是安卓系統(tǒng)越用越卡的毛病從根本上并沒(méi)有得到解決。究其根本主要是系統(tǒng)開(kāi)放性造成的混亂,許多流氓APP的不良行為(各種自啟、關(guān)聯(lián)喚醒)成為越用越卡的罪魅禍?zhǔn)祝〗裉煨【幘蛠?lái)給大家講解一下為什么安卓系統(tǒng)會(huì)變得越來(lái)越卡,以及如何從根本上解決智能電視卡頓的問(wèn)題! 隨著2015年智能電視行業(yè)的飛速發(fā)展,現(xiàn)在的智能電視/盒子的配置也是越來(lái)越高,四核、八核、64位處理器… 系統(tǒng)的流暢性遠(yuǎn)超從前。但是仍然不可避免的是,許多的智能電視在用了半年以后便會(huì)慢慢變卡… 其實(shí)原因也很簡(jiǎn)單: 一是先天不足,在Linux上跑個(gè)虛擬機(jī),再用JAVA做開(kāi)發(fā),雖然能減輕開(kāi)發(fā)負(fù)擔(dān),獲得浩瀚資源,但在后期優(yōu)化上的成本增加更多,Java沒(méi)有提供任何操作來(lái)釋放內(nèi)存(iOS的開(kāi)發(fā)語(yǔ)言O(shè)bject C能自行控制內(nèi)存釋放),是通過(guò)系統(tǒng)的內(nèi)存回收機(jī)制來(lái)進(jìn)行管理,但內(nèi)存回收是個(gè)雙刃劍,GC(Gabage Collection,垃圾回收)時(shí)所有線程都要暫停,也就是所謂的卡頓。
360截圖20160215195048062.jpg (51.09 KB, 下載次數(shù): 4)
下載附件
保存到相冊(cè)
2016-2-15 19:54 上傳
Android的系統(tǒng)架構(gòu) 二是后天開(kāi)放帶來(lái)的混亂,強(qiáng)制與封閉,給iOS的應(yīng)用帶來(lái)了高度的統(tǒng)一和標(biāo)準(zhǔn),而開(kāi)放的Android必然帶來(lái)混亂這樣的負(fù)面作用,碎片化是眾所周知的惡果,一些應(yīng)用為了兼容更多舊款設(shè)備,只得繼續(xù)使用低level的API,如微信,現(xiàn)在還是使用API level 9,就是為了能在Android 2.3系統(tǒng)上使用,而Android 5.1支持的API level已達(dá)到22了,效率上顯然大打折扣,除此之外,開(kāi)發(fā)上的開(kāi)放性更是一個(gè)非常大的隱患,這也是今天要談的主要問(wèn)題。 經(jīng)常被拿來(lái)與Android比較的iOS為了流暢度,其實(shí)做了非常多的妥協(xié)來(lái)?yè)Q取用戶體驗(yàn)上的好感,比如墓碑式內(nèi)存管理、優(yōu)先UI渲染等,Google在2012年提出了黃油計(jì)劃(Project Butter),開(kāi)始著手解決Android卡頓這個(gè)老大難問(wèn)題,并從Android 5.0開(kāi)始,將Dalvik虛擬機(jī)全面轉(zhuǎn)向ART虛擬機(jī),后者在安裝應(yīng)用的時(shí)候會(huì)進(jìn)行預(yù)編譯,將代碼轉(zhuǎn)換為機(jī)器語(yǔ)言存儲(chǔ)在本地,這樣在運(yùn)行程序時(shí)就不用每次都編譯一次,執(zhí)行效率得到大大提升,同時(shí),新的ART模式也降低了每次GC的時(shí)間,一些額外的優(yōu)化也可以避免GC的頻繁發(fā)生。
360截圖20160215195105187.jpg (26.68 KB, 下載次數(shù): 4)
下載附件
保存到相冊(cè)
2016-2-15 19:54 上傳
黃油計(jì)劃的垂直同步與三重緩沖讓操作更一致順滑 Google的這些作為讓Android系統(tǒng)在流暢度上有了實(shí)質(zhì)性的突破,從宏觀上講,Android是越來(lái)越不卡越來(lái)越流暢,那么,在如今這么強(qiáng)大的硬件支持下,為什么還會(huì)讓很多人覺(jué)得越用越卡呢? 現(xiàn)在,Android越用越卡:APP在后臺(tái)不斷重生 到了今天,隨著硬件的發(fā)展及系統(tǒng)的不斷改良優(yōu)化,Android架構(gòu)上的先天不足已經(jīng)是影響甚微,從那些旗艦新機(jī)的表現(xiàn)足以證明了,秒開(kāi)、流暢、順滑……絕不輸于 同級(jí)別iPhone,但是,這通常是指出廠狀態(tài)下的表現(xiàn),如果裝上幾十個(gè)國(guó)產(chǎn)APP,情況可能會(huì)發(fā)生些變化——流暢度明顯下降了,用戶開(kāi)始叫卡了。 顯然問(wèn)題出在這些APP上,前面說(shuō)過(guò),Android的開(kāi)放是把雙刃劍,在自由的背后往往潛伏著危險(xiǎn),善惡存乎一心,開(kāi)發(fā)商掌控著進(jìn)退大權(quán),而以國(guó)人之尿性,搶占市場(chǎng)、提升APP活躍度往往是最重要的,既然我不流氓別人也會(huì)流氓,我為什么不更流氓呢? Android應(yīng)用開(kāi)發(fā)有四大組件,廣播接收器(BroadcastReceiver,以下簡(jiǎn)稱Receiver)就是其中之一,它用來(lái)接收來(lái)自系統(tǒng)和應(yīng)用中的廣播,你也可以理解它是一個(gè)監(jiān)聽(tīng)器,比如當(dāng)電量變化時(shí),系統(tǒng)會(huì)產(chǎn)生一條廣播,接收到這條廣播就能在電量低時(shí)告知用戶保存進(jìn)度或進(jìn)入省電模式等;當(dāng)有電話進(jìn)來(lái),也會(huì)產(chǎn)生一條廣播,就會(huì)通知電話接聽(tīng)或電話號(hào)碼判斷等。
360截圖20160215195120328.jpg (65.75 KB, 下載次數(shù): 3)
下載附件
保存到相冊(cè)
2016-2-15 19:54 上傳
各色各樣的系統(tǒng)Receiver(采集于ROM Toolbox) 在Android中,全局的Receiver就近百種,可以監(jiān)聽(tīng)各色各樣的狀態(tài)變化,比如開(kāi)關(guān)機(jī)、通電斷電、網(wǎng)絡(luò)狀態(tài)變化、電量變化、安裝卸載應(yīng)用、電話呼出呼入、SD卡變化等。開(kāi)放的Android允許應(yīng)用程序注冊(cè)任意個(gè)Receiver, 這也成為流氓應(yīng)用滋生的溫床,不良的開(kāi)發(fā)者向系統(tǒng)注冊(cè)多個(gè)靜態(tài)Receiver,接受各種廣播通知,然后執(zhí)行相應(yīng)的Activity,比如自啟動(dòng)。 Android越用越卡的主要原因在于,后臺(tái)有大量應(yīng)用在默默運(yùn)行,而這些應(yīng)用根本就是清理不掉的,它們會(huì)在收到各種各樣的Receiver通知后并再度啟動(dòng),我能想到最好的描述就是“野火燒不盡,春風(fēng)吹又生”。作為對(duì)比,iOS中被殺掉的后臺(tái)進(jìn)程再啟動(dòng)的方法很有限,簡(jiǎn)單的說(shuō),iOS是真的能清理內(nèi)存,而Android中許多應(yīng)用揮之不去,不斷重生,各種進(jìn)程與服務(wù)在后臺(tái)偷偷運(yùn)行,從而引起系統(tǒng)卡頓與耗電,其實(shí)又有幾個(gè)開(kāi)發(fā)商會(huì)為用電著想呢? Android不良應(yīng)用的重生,主要有兩種途徑:自啟動(dòng)和關(guān)聯(lián)喚醒。 你想都想不到的自啟動(dòng) 自啟動(dòng),可能在我們意識(shí)里它就等于開(kāi)機(jī)自動(dòng)運(yùn)行,在Windows下倒也沒(méi)差,但在Android下你就太小瞧它了,開(kāi)機(jī)自動(dòng)運(yùn)行只是眾多自啟動(dòng)方式中的一種。在Windows中,你關(guān)閉某個(gè)軟件后,它基本上不會(huì)再自行啟動(dòng)了,然后Android中由于有Receiver這種東東,讓自啟動(dòng)變得很容易。 還是來(lái)點(diǎn)具體實(shí)例,看看國(guó)外APP與國(guó)內(nèi)APP的節(jié)操對(duì)比:
360截圖20160215195147406.jpg (35.11 KB, 下載次數(shù): 3)
下載附件
保存到相冊(cè)
2016-2-15 19:54 上傳
eBay與“手機(jī)淘寶”應(yīng)用的自啟動(dòng)方式對(duì)比 作為同類型電商APP,eBay只有在收到三種Receiver后可能會(huì)啟動(dòng),而且這三種都是比較規(guī)范的,反觀“手機(jī)淘寶”,共有九種自啟動(dòng)行為,除了eBay那三種外,還可能在收到應(yīng)用卸載等六種Receiver后啟動(dòng),我只是想問(wèn),我設(shè)置時(shí)間、卸載應(yīng)用和你淘寶有半毛錢關(guān)系? 很可惜,國(guó)外的APP在國(guó)內(nèi)基本沒(méi)辦法用,而國(guó)內(nèi)的不管是優(yōu)秀的APP還是山寨國(guó)外的APP,大多數(shù)以搶占市場(chǎng)、提高應(yīng)用活躍度為主,拼著命變著法子讓自家APP處于活動(dòng)狀態(tài),一鍵清理內(nèi)存還有什么用呢,過(guò)幾分鐘又如野草般齊刷刷地長(zhǎng)了出來(lái)。其實(shí)“手機(jī)淘寶”這個(gè)APP還算好的,看個(gè)更變態(tài)的:
360截圖20160215195209828.jpg (26.67 KB, 下載次數(shù): 4)
下載附件
保存到相冊(cè)
2016-2-15 19:54 上傳
百度云有19種自啟行為 百度云APP高達(dá)19種自啟行為,打電話、發(fā)短信、充電、連網(wǎng)、換個(gè)WIFI等等,這些日常的操作,都能讓百度云不斷重生自啟,與你如影隨行,而且是隱蔽不可見(jiàn)的。 打虎親兄弟的關(guān)聯(lián)喚醒 關(guān)聯(lián)喚醒大家多少有些了解,也是極具中國(guó)特色的產(chǎn)物,簡(jiǎn)單地講就是當(dāng)一款應(yīng)用啟動(dòng)后,它會(huì)在后臺(tái)偷偷啟動(dòng)另一款應(yīng)用,基本上這些應(yīng)用都有裙帶關(guān)系,以臭名昭著的百度系、阿里系為代表,真是應(yīng)了“打虎親兄弟,上陣父子兵”那句話。
360截圖20160215195228515.jpg (34.85 KB, 下載次數(shù): 4)
下載附件
保存到相冊(cè)
2016-2-15 19:54 上傳
典型的關(guān)聯(lián)喚醒 上圖中,當(dāng)運(yùn)行“百度地圖”時(shí),后臺(tái)會(huì)打開(kāi)“百度云”,當(dāng)運(yùn)行“手機(jī)淘寶時(shí)”,“支付寶”也同時(shí)在后臺(tái)開(kāi)啟,這些都是你看不見(jiàn)的,你手機(jī)中的APP越多,那么關(guān)聯(lián)喚醒的APP就會(huì)越多。 如果你不怕死,裝了百度這一系列APP,就會(huì)很熱鬧:
360截圖20160215195300765.jpg (47.76 KB, 下載次數(shù): 3)
下載附件
保存到相冊(cè)
2016-2-15 19:54 上傳
連環(huán)喚醒,一人得道,雞犬升天 當(dāng)你打開(kāi)“百度地圖”后,百度系的其它APP會(huì)連環(huán)喚醒(我這這里喚醒了八款,因?yàn)橹谎b了這么多,像百度助手、愛(ài)奇藝視頻都能被喚醒),首先“百度地圖”會(huì)喚醒“百度云”,“百度云”緊接著會(huì)喚醒“手機(jī)百度”和“百度視頻”,然后“百度視頻”不遺余力地喚醒幾個(gè)好兄弟“百度新聞”、“百度音樂(lè)”、“百度貼吧”、“百度瀏覽器”和“百度糯米”。
360截圖20160215195320437.jpg (50.99 KB, 下載次數(shù): 4)
下載附件
保存到相冊(cè)
2016-2-15 19:54 上傳
“百度云”的喚醒路徑及百度系的喚醒記錄 一人得道,雞犬升天,“全家桶”實(shí)在是形容得太貼切了。不過(guò)說(shuō)實(shí)在的,關(guān)聯(lián)喚醒的APP畢竟都沾親帶故,主要集中于那幾大派系,和無(wú)處不在的自啟動(dòng)相比,關(guān)聯(lián)喚醒的影響相對(duì)要小一些。 面對(duì)野火燒不盡的重生式APP,怎么辦? 面對(duì)這些不斷重生的APP,顯然手動(dòng)清理內(nèi)存是沒(méi)什么卵用,剛清理了它又啟動(dòng)了,沒(méi)辦法從根本上至少是極大程度上制約這些流氓APP頻繁地被喚醒。好在這種現(xiàn)象已引起了極大關(guān)注,有些ROM已開(kāi)始著手從底層來(lái)解決這些問(wèn)題,像最新的魅族Flyme 5就能手動(dòng)切斷關(guān)聯(lián)喚醒,算是邁進(jìn)了一小步。
360截圖20160215195342484.jpg (32.59 KB, 下載次數(shù): 3)
下載附件
保存到相冊(cè)
2016-2-15 19:54 上傳
Flyme 5的自啟動(dòng)管理 不管你用的ROM是不是作了針對(duì)性改進(jìn),都可以參考以下的解決方法,讓負(fù)面影響降到最小: 1、盡量不要安裝使用頻率極低的智能電視應(yīng)用,同類型應(yīng)用只安裝最精品的一個(gè); 2、盡量不要安裝網(wǎng)上流傳的第三方應(yīng)用軟件,不確認(rèn)安全性的應(yīng)用通常很流氓; 3、安裝優(yōu)秀的安卓系統(tǒng)維護(hù)工具 - 如沙發(fā)管家應(yīng)用市場(chǎng)(提供安全可靠的應(yīng)用,以及內(nèi)存清理等功能); 小編這里著重講解一下第三點(diǎn)。 雖然目前智能電視市場(chǎng)已經(jīng)有了長(zhǎng)足的發(fā)展,但相比智能手機(jī)來(lái)說(shuō)仍然十分落后,應(yīng)用市場(chǎng)也相對(duì)殘缺。當(dāng)貝市場(chǎng)則是目前最優(yōu)質(zhì)的應(yīng)用市場(chǎng),匯聚了各類專為智能電視設(shè)計(jì)的應(yīng)用軟件,所有在當(dāng)貝市場(chǎng)中下載的影視應(yīng)用游戲軟件都經(jīng)過(guò)了程序員的測(cè)試,小編針對(duì)每一款上架應(yīng)用都經(jīng)過(guò)了系列的測(cè)試,有任意惡意行為都會(huì)被禁止上架,不但應(yīng)用最全更新最快,而且都保證綠色、友好,濾除了很多的流氓軟件。 裝機(jī)必備更是囊括了所有智能電視必備的優(yōu)質(zhì)應(yīng)用,方便智能電視新用戶快速上手。 除了數(shù)量豐富的優(yōu)質(zhì)第三方應(yīng)用軟件,一鍵清理、深度清理、更多優(yōu)化、卸載、下載管理、安裝包管理等等智能電視優(yōu)化功能。能夠保證智能電視的安卓系統(tǒng)時(shí)刻運(yùn)行在最佳狀態(tài)。
360截圖20160215195424640.jpg (49.3 KB, 下載次數(shù): 3)
下載附件
保存到相冊(cè)
2016-2-15 19:54 上傳
Android系統(tǒng)智能電視為什么越用越卡,相信看完這篇文章的朋友會(huì)有答案,Android系統(tǒng)上先天不足的影響現(xiàn)在已經(jīng)不足道了,主要原因是開(kāi)放性造成的混亂,國(guó)產(chǎn)APP的不良行為(各種自啟、關(guān)聯(lián)喚醒)成為越用越卡的罪魅禍?zhǔn)祝ㄟ^(guò)上面的解決方法可以讓負(fù)面影響最小化,讓你的智能電視能再現(xiàn)流暢順滑。 但是要從根本上解決這些問(wèn)題,我們真的需要一個(gè)安靜的APP,不要在后臺(tái)各種胡天胡帝,幾時(shí)Android的應(yīng)用能像iOS應(yīng)用那般規(guī)范標(biāo)準(zhǔn),一統(tǒng)天下就指日可待了!
|