Android 總是內存不足,該怎麼辦啊?| 有用功
之前在徵集有用功選題的時候,我們收到被提到很多次的問題一則:「Android 手機用着總是內存不夠,有解決方案沒?」
我們經常説到內存不夠用,似乎市面上也提供了各種各樣的辦法。懸浮窗殺進程、綠色守護、或者直接手動一個個關閉後台應用,這些操作是否能讓手機重煥黃油般順滑的青春?不如先賣個關子。
Android 的手機內存是什麼?
有很多技術詞彙可以描述手機 RAM,也就是手機內存。為了方便這篇文章的理解,我們只需要知道,內存能以最快的速度存儲臨時信息。
俗話説「遠親不如近鄰」,當我們真的有急事時,從其他城市甚至國家趕來幫忙當然不夠快,而「近鄰」就是內存了,它能第一時間用最快地速度幫你解決問題。
所以當我們在給自己美顏或 P 圖時,處理的照片和運行的應用,都發生在內存中,這樣才能保證一切功能都足夠流暢。只有磨完皮,放大完眼睛直到你滿意後,你的內存才能小憩一下。
所以你看,內存越多,往往就能夠做到更多的事情,比如打開更多的網頁、運行更多的 App,而需要隨時切換應用時,當然也需要大容量的內存。
需要注意的是,目前旗艦 Android 機內存也在 4G 左右,所以當別人説到手機的「32G 內存」時,那自然不是 RAM 啦,起碼這兩年不是。
Android 是如何處理內存和應用的?
在 Windows 系統中,我們也許希望能夠騰出更多內存去完成工作,因為一旦內存宣佈已滿,Windows 則會傲嬌地拿硬盤替補內存,當然速度也會慢很多。如此推理下來,那 Android 也要避免這樣的情況,時刻騰內存咯?
答案是:完全不需要!
對於 Android 系統,Google 早已準備好了足夠智能的分配方法,內存不夠時也能自動回收。有時候,Android 甚至刻意讓應用提前加載到內存中,只為能夠被用户隨時調用。
還記得之前説的嗎?內存擁有最快的讀取速度,而一分一秒都影響用户體驗的今天,把應用們放在內存裏,當然也是一件好事。在這裏,內存就相當於工作用的書桌,相比書櫃(也就是手機儲存),雖然堆滿資料和文具,但你總能方便地第一時間使用他們,而貼心的 Android 會幫你做好收拾桌面這件事。
不過,Android 之前的內存把控水平也沒有想象中那麼好。從 Android 2.3,直到今天的棉花糖的 Android 6.0,才開始被大家表揚。一張廣為流傳的圖,就是拿來吐槽 Android 5.1 之前的內存回收問題:
桌面懸浮球,我每隔五分鐘清一次,這樣還卡?
我們經常説,Android 想要永葆年輕,全靠折騰。但折騰有度,更要有方法,如果你看過某些科普文,也許你會覺得所謂自動殺進程、內存加速是件不好不壞,又無可厚非的事情。
可別這麼想,也許他們真的只是在幫倒忙。
且不説一個偌大的懸浮框佔據了本身就不大屏幕,Android 的內置儲存也和傳統的電腦硬盤機制不同,採用的閃存技術更加類似於固態硬盤,自然不需要額外去整理。另外,硬件的讀取次數也是有限的,隨着一次次清理,存儲硬件的壽命也一點點被耗進,自然也會越來越慢。
如果你是原生控,或者反感雜亂的桌面,也許下圖這樣的桌面並不適合你:
還有一點,當我們殺進程時,其實只能在表面上關閉他們。下一次收到通知、或者人為重新打開,甚至因為各種各樣的情況被喚醒時,忙碌的 Android 又要將這些應用重新放上內存中。還記得嗎,只有內存是最快的,而從內置儲存調用一個應用,當然速度也會跟不上。
最讓人頭疼的是,大部分自動清理內存的應用,注意是「自動」,它們本身也需要消耗一部分內存和 CPU,以便他們隨時監控、殺死其他應用,而且還是常駐後台的。在實際的測驗中,他們不僅表現得無效,對於電池和手機儲存壽命也產生了很大的消耗。而折騰完這一切後,就這樣沒有任何回報地傷害了自己的愛機,當然處女座心中的滿足感可以例外。
實際可行的辦法
雖然我們完全不需要額外的應用幫我們殺進程、清理內存,但 Android 的內存越大越好確是事實。換個角度去理解:內存越緊張,自然體驗和速度都會相應下降。
在「系統設置」-「應用程序」-「正在運行」中,你能看到目前的內存佔用情況。如果選擇嚐鮮 Android 6.0 系統,則會提供更加詳細地報告,包括當前內存使用情況評價,固定時間段中內存佔用情況等。
當然,誰都不希望看到內存永遠不夠用、手機時常卡、切迴應用發現已經被後台殺掉的情況,以下是一些實際可行的辦法:
1. 禁用/卸載應用程序、禁用動畫、動態壁紙:
佔用內存最多的就是應用程序,請果斷禁用或者卸載那些不需要的應用吧。
Android 4.0 以上的系統,都可以在「系統設置」-「應用程序」-「全部」中選擇並停用不需要的內置應用,而不需要 root,他們也不會再佔據你的內存。當你需要時可以方便地還原而不會丟失。
但要小心,不是所有不需要的應用都可以禁用,在停用前請確保不會影響系統的穩定。
Android 5.0 之後系統動畫已足夠優雅,但如果內存持續吃緊,在設置中找到「開發者模式」(找不到的同學,在「關於手機」中找到「版本號」,連續點擊 7 次即可解除封印),將其中「窗口動畫縮放」、「過渡動畫縮放」和「動畫程序時長縮放」三項都關閉,它們就再也不會偷到一點內存。當然,如果你都設成 0.5x,在觀感上也許會覺得更加流暢。
不用擔心,打開開發者選項後,除非人為調整了其中的參數,它的開啟不會對手機產生任何影響。
別忘了桌面小部件和動態壁紙,他們頻繁的刷新也隨時在吃內存。所以合理地規劃桌面小部件的數量,自然也是優化內存的重要一步。但由於每個人的使用習慣不同,所以這裏不做更多要求。
2. 選擇更加輕量級的替代品:
這裏不提流氓應用,畢竟選擇正確的應用市場(諸如 AppSo 永遠優先推薦的 Google Play)可以避開大部分。接下來主要針對的,是那些不夠安分的應用們:因為各種原因,它們熱衷於互相喚醒、採用陳舊的接口且強佔後台。當然,崇尚自由的 Android 用户怎麼可能束手無策呢。
擁有複雜架構的產品,對於內存的佔用自然也不會少。如果你留心我們往期的 Android 部分文章,你能發現足夠多的優質產品,它們不僅能夠完美替代那些複雜的產品,設計上更加美觀,當然也足夠輕量。
這裏帶着情懷提供一個不夠客觀的辨別方法:如果這款應用採用了 Material Design 風格,那它對你的手機也許會更加友好。而相比許多國內大廠產品,一旦你掌握了搭梯子技能後,Google 服務也會成為絕讚的替代品。
3. 冰箱 Ice Box + 綠色守護:
也許你的手機管家已經讓你關閉了應用的開機自啟,但其實這樣的作用並不大。對於許多大廠應用,它們喚醒的方式可比你想象的要豐富得多,甚至連上 Wi-Fi 也能成為它喚醒的理由。還有一點需要強調的是,由於 Android 的內存機制,許多本沒有必要的後台服務,或者推送服務,因為優先級較高,不僅耗電,對於內存的佔用也不少。
所以對於這些不老實卻又無法割捨的應用,冰箱 Ice Box 和綠色守護這兩款應用一定能幫到你。
先説前者,冰箱 Ice Box 名副其實,它能將你不喜歡卻偶爾不得不用的應用冷藏起來,畢竟 Android 系統還不能「停用」非系統應用。比如説,某些銀行應用,圖標醜到不忍放在首頁,卻又總是佔着一部分內存,你就可以選擇用冰箱將它們「停用」,相當於被臨時刪除,而不會丟失原本的數據,需要時直接從冷宮裏召回來就行。
這樣做的好處,等於為不常用的應用額外歸檔,而不需要時他們會完全消失,對手機不會產生任何影響。一旦需要時,即點即開又能順場地使用,也就不用再強迫症地裝完刪、刪完又裝。
而後者綠色守護,早已在 Android 的玩家圈子中擁有不錯的名氣。如果説那些清理內存的懸浮球們,是為了殺死進程,那綠色守護則是一邊殺死他們,同時又確保他們不會「詐屍」,不再悄悄喚醒自己並偷走剩下的內存。當然,這樣的説法太粗魯,我們管這個步驟叫做「綠色化」。
不過,「綠色化」一個應用,意味着我們確實希望它在不啟動的時候休眠,而這款應用的後台功能也會隨之停止。所以對於有用的推送(比如微信的消息提醒等)、系統應用以及輸入法等常用應用,請謹慎對待。
由於篇幅限制,這兩款應用的具體原理和操作方法請各位自行搜索。對於 AppSo 的 Android 老讀者來説,使用起來一定不會覺得困擾。需要注意的是,兩款應用都需要 root 權限。
4. 最後的暗器 My Android Tools:
上面的兩款應用,都在不同程度阻止了不安分應用的「非必要佔內存」行為。而 My Android Tools 則不太一樣。一款應用中包含了不同的服務,而它將從內部對應用進行開刀,把不老實或非必要卻佔內存的部分全部切掉。
換句話説,通過手動調試,讓用户自行「精簡」一款應用。
舉個例子,對於 QQ 的會員功能、錢包、網上營業廳,還有部分無用喚醒,都不是基本功能,甚至可能永遠都不會用上,通過這款工具就能輕鬆地關閉他們(當然也能隨時復原)。
處理後的 QQ 佔據的內存也只有之前的一半了,且絲毫不影響核心功能。
當然,為應用動手術這件事情,也要求一定的技術積累,對於沒有經驗的新手,一定要了解這樣的操作可能帶來應用不穩定的風險。推薦新手去知乎或其他平台搜索關鍵詞「My Android Tools」,詳盡的手把手教程一定能解答許多困擾。
5. 選擇一個更好的 ROM
至此,我們通過軟件方面的努力,已經能讓小內存的 Android 機器緩一口氣了,但最後別忘了系統升級這件事。
我們經常遇到三星剩餘 600M 的內存卻依然卡頓,而換成 CM 系統(由 Cyanogen 團隊開發的一款開源 Android 系統)低內存機卻十分流暢的情況。畢竟系統底層的改動和優化,還有不同開發者對於內存機制的安排,對於試用體驗的提升也非常大。
如果有條件,且樂於折騰刷機這件事,請務必升級到更高級的系統。畢竟 512MB 在 2015 年依舊順滑的神話,也是從 Android 4.4 之後才開始的。
Android 4.4 以上的系統,不僅能夠解決內存泄露的問題,同時還自帶 ART 模式,能給低內存手機帶來明顯的速度提升。(Android 5.0 版本的系統存在內存泄露的問題隱患,需要注意。)
6. 最後一個辦法:直接換手機
許多人都會感到困擾:為什麼我的手機總是越用越慢呢?
許多時候我們會通過軟件上的操作,去對抗手機越來越卡的問題。但很多時候,我們也忽略了硬件的損耗,尤其是手機儲存模塊的消耗,隨着長時間的使用,老化和損耗不可避免。而許多手機廠家為產品定位時,對於手機的生命週期設計也就在一兩年左右。
所以當老手機總覺得內存不夠,經常一卡一卡的,花點錢換一台 4G 內存的手機也是不錯的選擇。畢竟內存、電池這些東西,就應該拿來為你服務,不是嗎?
資料來源:愛範兒(ifanr)
作者/編輯:樑晉豪