您的位置: 首頁 > 新聞 > 高新技術(shù) > 新聞詳情

為何安卓手機(jī)越用越卡?國(guó)產(chǎn)流氓App成罪魁禍?zhǔn)?/h1>
時(shí)間:2015-12-24 21:21:18
  • 來源:超能網(wǎng)
  • 作者:skylark
  • 編輯:豆角

自2008年第一部Android手機(jī)發(fā)布至今,雖然在操作體驗(yàn)上一直生活在iOS陰影之下,但不可否認(rèn),Android是越來越強(qiáng)了,與iOS的差距越來越小,尤其是一向被詬病的流暢度,在Android 5.0之后更是有了質(zhì)的飛躍。如今的Android手機(jī),在八核處理器4GB內(nèi)存加持下,一樣也可以做到如絲般的順滑,然而……

“野火燒不盡,春風(fēng)吹又生”,非常應(yīng)本文之景

“野火燒不盡,春風(fēng)吹又生”,非常應(yīng)本文之景

“安卓越用越卡,有本事用半年再比比!”,好像真是這樣,竟然反駁不了。

以前,Android為什么不如iOS流暢?

以前,Android的流暢度不如iOS,其實(shí)原因也很簡(jiǎn)單:

一是先天不足,在Linux上跑個(gè)虛擬機(jī),再用JAVA做開發(fā),雖然能減輕開發(fā)負(fù)擔(dān),獲得浩瀚資源,但在后期優(yōu)化上的成本增加更多,在上次的《Android手機(jī)需要清內(nèi)存嗎?》中提過,Java沒有提供任何操作來釋放內(nèi)存(iOS的開發(fā)語言O(shè)bject C能自行控制內(nèi)存釋放),是通過系統(tǒng)的內(nèi)存回收機(jī)制來進(jìn)行管理,但內(nèi)存回收是個(gè)雙刃劍,GC(Gabage Collection,垃圾回收)時(shí)所有線程都要暫停,也就是所謂的卡頓。

Android的系統(tǒng)架構(gòu):

二是后天開放帶來的混亂,強(qiáng)制與封閉,給iOS的應(yīng)用帶來了高度的統(tǒng)一和標(biāo)準(zhǔn),而開放的Android必然帶來混亂這樣的負(fù)面作用,碎片化是眾所周知的惡果,一些應(yīng)用為了兼容更多舊款設(shè)備,只得繼續(xù)使用低level的API,如微信,現(xiàn)在還是使用API level 9,就是為了能在Android 2.3系統(tǒng)上使用,而Android 5.1支持的API level已達(dá)到22了,效率上顯然大打折扣,除此之外,開發(fā)上的開放性更是一個(gè)非常大的隱患,這也是今天要談的主要問題。

iOS為了流暢度,其實(shí)做了非常多的妥協(xié)來換取用戶體驗(yàn)上的好感,比如墓碑式內(nèi)存管理、優(yōu)先UI渲染等,Google在2012年提出了黃油計(jì)劃(Project Butter),開始著手解決Android卡頓這個(gè)老大難問題,并從Android 5.0開始,將Dalvik虛擬機(jī)全面轉(zhuǎn)向ART虛擬機(jī),后者在安裝應(yīng)用的時(shí)候會(huì)進(jìn)行預(yù)編譯,將代碼轉(zhuǎn)換為機(jī)器語言存儲(chǔ)在本地,這樣在運(yùn)行程序時(shí)就不用每次都編譯一次,執(zhí)行效率得到大大提升,同時(shí),新的ART模式也降低了每次GC的時(shí)間,一些額外的優(yōu)化也可以避免GC的頻繁發(fā)生。

黃油計(jì)劃的垂直同步與三重緩沖讓操作更一致順滑

黃油計(jì)劃的垂直同步與三重緩沖讓操作更一致順滑

Google的這些作為讓Android系統(tǒng)在流暢度上有了實(shí)質(zhì)性的突破,從宏觀上講,Android是越來越不卡越來越流暢,那么,在如今這么強(qiáng)大的硬件支持下,為什么還會(huì)讓很多人覺得越用越卡呢?

現(xiàn)在,Android越用越卡:APP在后臺(tái)不斷重生

到了今天,隨著硬件的發(fā)展及系統(tǒng)的不斷改良優(yōu)化,Android架構(gòu)上的先天不足已經(jīng)是影響甚微,從那些旗艦新機(jī)的表現(xiàn)足以證明了,秒開、流暢、順滑……絕不輸于同級(jí)別iPhone,但是,這通常是指出廠狀態(tài)下的表現(xiàn),如果裝上幾十個(gè)國(guó)產(chǎn)APP,情況可能會(huì)發(fā)生些變化——流暢度明顯下降了,用戶開始叫卡了。

顯然問題出在這些APP上,前面說過,Android的開放是把雙刃劍,在自由的背后往往潛伏著危險(xiǎn),善惡存乎一心,開發(fā)商掌控著進(jìn)退大權(quán),而以國(guó)人之尿性,搶占市場(chǎng)、提升APP活躍度往往是最重要的,既然我不流氓別人也會(huì)流氓,我為什么不更流氓呢?

Android應(yīng)用開發(fā)有四大組件,廣播接收器(BroadcastReceiver,以下簡(jiǎn)稱Receiver)就是其中之一,它用來接收來自系統(tǒng)和應(yīng)用中的廣播,你也可以理解它是一個(gè)監(jiān)聽器,比如當(dāng)電量變化時(shí),系統(tǒng)會(huì)產(chǎn)生一條廣播,接收到這條廣播就能在電量低時(shí)告知用戶保存進(jìn)度或進(jìn)入省電模式等;當(dāng)有電話進(jìn)來,也會(huì)產(chǎn)生一條廣播,就會(huì)通知電話接聽或電話號(hào)碼判斷等。

各色各樣的系統(tǒng)Receiver(采集于ROM Toolbox)

各色各樣的系統(tǒng)Receiver(采集于ROM Toolbox)

在Android中,全局的Receiver就近百種,可以監(jiān)聽各色各樣的狀態(tài)變化,比如開關(guān)機(jī)、通電斷電、網(wǎng)絡(luò)狀態(tài)變化、電量變化、安裝卸載應(yīng)用、電話呼出呼入、SD卡變化等。開放的Android允許應(yīng)用程序注冊(cè)任意個(gè)Receiver,這也成為流氓應(yīng)用滋生的溫床,不良的開發(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)單的說,iOS是真的能清理內(nèi)存,而Android中許多應(yīng)用揮之不去,不斷重生,各種進(jìn)程與服務(wù)在后臺(tái)偷偷運(yùn)行,從而引起系統(tǒng)卡頓與耗電,其實(shí)又有幾個(gè)開發(fā)商會(huì)為你手機(jī)的電池著想呢?

Android不良應(yīng)用的重生,主要有兩種途徑:自啟動(dòng)和關(guān)聯(lián)喚醒。

你想都想不到的自啟動(dòng)

自啟動(dòng),可能在我們意識(shí)里它就等于開機(jī)自動(dòng)運(yùn)行,在Windows下倒也沒差,但在Android下你就太小瞧它了,開機(jī)自動(dòng)運(yùn)行只是眾多自啟動(dòng)方式中的一種。在Windows中,你關(guān)閉某個(gè)軟件后,它基本上不會(huì)再自行啟動(dòng)了,然后Android中由于有Receiver這種東東,讓自啟動(dòng)變得很容易。

還是來點(diǎn)具體實(shí)例,看看國(guó)外APP與國(guó)內(nèi)APP的節(jié)操對(duì)比:

eBay與“手機(jī)淘寶”應(yīng)用的自啟動(dòng)方式對(duì)比

eBay與“手機(jī)淘寶”應(yīng)用的自啟動(dòng)方式對(duì)比

作為同類型電商APP,eBay只有在收到三種Receiver后可能會(huì)啟動(dòng),而且這三種都是比較規(guī)范的,反觀“手機(jī)淘寶”,共有九種自啟動(dòng)行為,除了eBay那三種外,還可能在收到應(yīng)用卸載等六種Receiver后啟動(dòng),我只是想問,我設(shè)置時(shí)間、卸載應(yīng)用和你淘寶有半毛錢關(guān)系?

很可惜,國(guó)外的APP在國(guó)內(nèi)基本沒辦法用,而國(guó)內(nèi)的不管是優(yōu)秀的APP還是山寨國(guó)外的APP,大多數(shù)以搶占市場(chǎng)、提高應(yīng)用活躍度為主,拼著命變著法子讓自家APP處于活動(dòng)狀態(tài),一鍵清理內(nèi)存還有什么用呢,過幾分鐘又如野草般齊刷刷地長(zhǎng)了出來。其實(shí)“手機(jī)淘寶”這個(gè)APP還算好的,看個(gè)更變態(tài)的:

百度云有19種自啟行為

百度云APP高達(dá)19種自啟行為,打電話、發(fā)短信、充電、連網(wǎng)、換個(gè)WIFI等等,這些日常的手機(jī)操作,都能讓百度云不斷重生自啟,與你如影隨行,而且是隱蔽不可見的。

友情提示:支持鍵盤左右鍵"←""→"翻頁
0

玩家點(diǎn)評(píng) 0人參與,0條評(píng)論)

收藏
違法和不良信息舉報(bào)
分享:

熱門評(píng)論

全部評(píng)論

他們都在說 再看看
3DM自運(yùn)營(yíng)游戲推薦 更多+