資源描述:
《手機安卓系統(tǒng)的耗電問題》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、手機安卓系統(tǒng)的耗電問題在這里說明?下,安卓系統(tǒng)其實不需要極度精簡,至少我不推薦這種行為,只是-?味的精簡并不會給系統(tǒng)帶來什么好處反而只有害處,因為許多系統(tǒng)應用跟設置里的選項有關聯(lián),刪除掉就會在選擇關聯(lián)選項的時候FC,所以應當盡量保證系統(tǒng)的完整性。后臺為什么會無緣無故多出很多進程呢?如果你真的理解安卓進程管理機制和軟件架構的話,就會發(fā)現(xiàn)各種Receiver,各種CHANGED事件其實才是主因,一切都是軟件進程事件觸發(fā)自行后臺啟動造成的。因為安卓的進程管理機制是事件觸發(fā)式,比如開機時、開機后、網(wǎng)絡連接更改
2、、電量不足、電量充足、時間更改、插上電源、斷開電源等等這些狀態(tài)的改變都可看作一個事件,而安卓系統(tǒng)允許程序關聯(lián)這些事件(這個是在程序開發(fā)中由開發(fā)者設定的),比如關聯(lián)開機事件后,就相當于我們-?般說的開機啟動了。但是安卓系統(tǒng)是可以允許?-個程序關聯(lián)多個事件的,以谷歌地圖舉例,它關聯(lián)的觸發(fā)事件有“開機后、安裝程序、卸載程序、更新程序、插上電源”等等,這些事件中的任何個狀態(tài)發(fā)生改變,系統(tǒng)就會自動后臺運行谷歌地圖。雖然安卓系統(tǒng)這樣做的目的是為了提高程序運行的效率,但是實際上卻給普通用戶帶來了太多不必要的麻煩。安
3、卓系統(tǒng)為什么會有時突然岀現(xiàn)卡頓呢,是因為很多軟件安裝完以后所產生的自啟動項,會在你不知道的情況下,并會根據(jù)不同觸發(fā)條件自行啟動自身的進程,每次如果有一些自啟動進程-?起啟動的時候都會臨時占用大量CPU資源和內存資源,所以系統(tǒng)此時必然會出現(xiàn)卡頓。很多軟件甚至會在你切換移動/WiFi網(wǎng)絡的時候自行啟動。假如你事先沒有把WiFi設置成永不休眠,那么鎖屏一段吋間后WiFi會自行關閉進入休眠狀態(tài),每一次開屏系統(tǒng)就會自行啟用一次WiFi,而很多軟件在啟用WiFi或者切換為移動網(wǎng)絡的時候就會以此為觸發(fā)條件自行啟動。
4、這個過程雖然短暫,但是會瞬間消耗大量的硬件資源,一定會出現(xiàn)卡頓的現(xiàn)象。所以你需要做的就是,使用自啟管理禁止這些情況發(fā)生。而且機器總是特別耗電的問題,也大多是出在這上面,并非全是基帶和系統(tǒng)版本的問題。這才是需要關注的本質問題:后臺進程太多,總是自行啟動無謂的消耗電量。很多人總是關注自己機器的內存使用情況怕運行內存剩余量變少,其實是錯誤的。2.3.4的安卓系統(tǒng)是改進了的內存管理機制,內存使用率高一些其實是一種優(yōu)化,大多時候系統(tǒng)會保留緩存進程并占用-‘些內存以加速程序運行。所以總是用任務管理器殺進程來節(jié)省內
5、存其實是一種錯誤的行為,因為你空出太多內存并沒有好處,往往只有壞處。例如你殺掉了某個系統(tǒng)進程,系統(tǒng)會以為是緊急釋放,現(xiàn)在內存乂有了空間就會自動的重新加載這個進程,這么重新加載一下就要動用CPU進行輪詢遍歷,要通過I/O讀取存儲器....這個時候雖然你可能并不知道,但系統(tǒng)開銷極其巨大,給你的直觀感受就是一怎么又卡了,又比如,你隨手干掉了-■?堆進程,內存空出來了,然后你滑動界面發(fā)現(xiàn)怎么還是卡??次次的清理內存,相當于一次次的清空系統(tǒng)的冷熱判斷機制,明明很冷的程序,系統(tǒng)給你加載上了,明明很熱的程序,系統(tǒng)轉
6、手給你釋放了....要么系統(tǒng)出錯,要么重建程序帶來系統(tǒng)消耗。在了解了這些以后,有針對性的進行優(yōu)化,刪除?-小部分實在沒用的系統(tǒng)附帶應用,盡量保證系統(tǒng)完整性,通過其他的方法來提高系統(tǒng)表現(xiàn)即可,自啟管理這個軟件恰好是能把每個軟件的receiver接收器事件全部列出來,讓用戶自己選擇禁用或者啟用,而市場上大大多數(shù)所謂的優(yōu)化軟件只能做到禁止最簡單的開機項(基本沒有什么意義),這就是為什么我推薦大家使用自啟管理這個軟件的原因。補充關于安卓內存管理機制的一些介紹和闡述:Android的內存管理機制,這是一種完全不
7、同于WM,Symbian,Windows乃至Linux的機制,是一種專門針對移動系統(tǒng)設計的機制,所以不要用其他系統(tǒng)的一些慣性思維來玩安卓。在傳統(tǒng)機制下,程序結朿,內存釋放,程序進入后臺,系統(tǒng)消耗資源維持后臺進程運行和狀態(tài)。但Android并非如此,Android將運行在操作系統(tǒng)上的程序分為六大類:1.前臺(Foreground),你正在運行操作的程序,例如你正在瀏覽網(wǎng)頁,這個瀏覽器就是前臺程序,這類程序是系統(tǒng)優(yōu)先保障的程序2.主要服務(Primaryservice),支撐系統(tǒng),以及極為重要的功能應用。
8、例如電話功能,這些主要服務一般不會被系統(tǒng)A動結束,即使你主動殺掉,系統(tǒng)也會自己重新加載,甚至可能導致不可預知的錯誤,需要重啟機器才能解決。3.次要服務(Secondaryservice),和系統(tǒng)皮用息息相關的許多殺序,例如聯(lián)系人,短信,硬件驅動觸發(fā)器,谷歌套件,乃至Latmcher,都是次要服務,如果你殺掉了Launcher,按小房子回到桌面的時候就只能重新慢慢等待Launcher加載;也有一些第三方程序因為需要在后臺繼續(xù)運行,建立次要服務,例如QQ,微