手機(jī)
手機(jī) 手機(jī)資訊 手機(jī)新聞 煩人:為何有些安卓后臺程序關(guān)不掉
安卓
08月 18

煩人:為何有些安卓后臺程序關(guān)不掉

編輯:匿名 來源:IT之家
放大 縮小 打印 郵件 收藏本頁 游吧論壇

安卓的后臺程序?yàn)槭裁搓P(guān)不掉?如果運(yùn)行內(nèi)存大,是不是就不需要關(guān)閉了?

相信很多Android的用戶也都有過這樣的經(jīng)歷,后臺程序關(guān)閉后,過不了一段時(shí)間某個(gè)程序就會自動啟用,這些自啟的程序?qū)τ谝恍┯袕?qiáng)迫癥習(xí)慣的用戶來說特別難受,那今天小編就借此機(jī)會給大家講一下為什么Android的后臺程序關(guān)不掉。

關(guān)于Android的后臺一直關(guān)不掉的問題,其實(shí)完全是因?yàn)?a target="_blank">Android的廣播機(jī)制。簡單來說,當(dāng)用戶安裝某一個(gè)程序的時(shí)候,系統(tǒng)會像面試官一樣把這個(gè)程序的功能記錄下來,當(dāng)用戶在使用手機(jī)時(shí),系統(tǒng)狀態(tài)的變化會產(chǎn)生各種事件,這些事件需要一些程序來處理的時(shí)候,系統(tǒng)會發(fā)送廣播消息,而這些能處理這件事的程序會被啟用,究竟是用哪一個(gè)程序,這個(gè)是由系統(tǒng)默認(rèn)的程序或者由用戶選擇的程序來處理這個(gè)事件。

舉個(gè)例子:就如同你開了一家公司,Android是你的管家,那些程序則是來你這里應(yīng)聘的職工,管家會記錄這些職工的能力,例如A會搓澡,B會大保健。當(dāng)你想要搓澡的時(shí)候,管家會叫A過來幫你搓澡。當(dāng)你想要大保健的時(shí)候,管家會叫B過來給你做個(gè)大保健。哪怕這個(gè)程序是在休眠中,也會被叫起來。也就是不管你怎么去關(guān)閉這些應(yīng)用程序,當(dāng)需要它的時(shí)候,它就是一顆螺絲釘,哪里需要哪里釘。

當(dāng)然還有一些你不需要的程序也一直在自啟動,這是因?yàn)槔娴脑?,國?nèi)的很多流氓軟件都改變了自身程序的優(yōu)先性,外加增加了終止其他程序的權(quán)限,還有增加守護(hù)進(jìn)程的功能,當(dāng)檢測到自己人被干掉了,直接一個(gè)復(fù)活術(shù)讓這個(gè)程序滿血滿藍(lán)原地復(fù)活。而另外一些社交軟件則是為了保證能夠及時(shí)推送消息,也會做出一些優(yōu)先權(quán)的改變。

如果運(yùn)行內(nèi)存大,是不是就不需要關(guān)閉了?

其實(shí)Android系統(tǒng)設(shè)計(jì)的理念就是要淡化用戶對后臺的管理,手機(jī)資源的分配完全交給系統(tǒng)就可以。Android會設(shè)定一個(gè)閾值,這個(gè)閾值默認(rèn)設(shè)置的非常小,所以我們所看到內(nèi)存剩余量也會很少,事實(shí)上并不會影響手機(jī)的速度,而且它有一個(gè)自己的規(guī)則來回收這些內(nèi)存,當(dāng)內(nèi)存使用達(dá)到臨界值的時(shí)候,再次打開另一個(gè)程序系統(tǒng)會選擇一些重要性比較低的程序關(guān)閉來騰出內(nèi)存給這個(gè)程序運(yùn)行。

而我們之所以感覺手機(jī)在打開某個(gè)大型程序會慢的原因就是當(dāng)你打開這個(gè)程序的時(shí)候,這個(gè)程序會向系統(tǒng)申請內(nèi)存,由于系統(tǒng)不會關(guān)閉所有的進(jìn)程,只是選擇性的去關(guān)閉,所以會調(diào)動大量的系統(tǒng)資源進(jìn)行操作,自然也就會拖慢系統(tǒng)。改變系統(tǒng)的閾值會改善很多,但是也可能會帶來一些問題。

所以,后臺的程序本身就不需要關(guān)閉,如果當(dāng)你運(yùn)行某個(gè)大型程序的時(shí)候可以去手動關(guān)閉,這樣可以顯著的提高速度,而平常使用的時(shí)候則不需要去管它。至于內(nèi)存的大小,這個(gè)除非你內(nèi)存大到一定程度,否則你安裝N多APP早晚又會達(dá)到這個(gè)閾值的。

打印 郵件 收藏本頁 幫肋
推薦閱讀
相關(guān)閱讀