資源描述:
《Iphone4后臺(tái)模式設(shè)置教程Backgrounder使用教程.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、先聲明,本文是我在其他地方看到后轉(zhuǎn)過來的,最初的出處我找不到了,謝謝原作者,我只是轉(zhuǎn)載不是剽竊。原來裝好backgrounder后一看全是e文,不太理解,沒設(shè)置好,這次在網(wǎng)上搜到了這個(gè)教程,感覺分成之不錯(cuò),推薦給大家。以下為轉(zhuǎn)載內(nèi)容在網(wǎng)上看了半天,沒有看到一個(gè)到位的Backgrounder教程,大多數(shù)都是截個(gè)圖,告訴你照他這樣設(shè)就好了。且不說各人的使用習(xí)慣不一樣照貓畫虎行不行,單說發(fā)這些教程的人很多自己也沒搞清楚那些選項(xiàng)的真正意思,各種版本的教程問題多多。偏偏Backgrounder又是個(gè)對(duì)系統(tǒng)行為影響巨大的程序,個(gè)人感覺那些越獄之后大
2、叫越獄費(fèi)電厲害的一大半是因?yàn)檫@個(gè)程序。而Backgrounder的設(shè)置又是無比的繞,不仔細(xì)想想是不大能搞清楚的,這個(gè)程序的設(shè)置是需要思考的。所以小弟我認(rèn)真做了個(gè)教程,希望能夠幫大家正確使用這個(gè)程序。所有的說明以IOS4為標(biāo)準(zhǔn),更早的系統(tǒng)我沒有用過,沒辦法幫到大家。先用截圖簡(jiǎn)單說明一下,然后后面再展開說明。后臺(tái)模式設(shè)置(Backgroundingmethod)對(duì)于正確使用Backgrounder,最重要的就是對(duì)于IOS4原生后臺(tái)模式的理解。這個(gè)問題Backgrounder自帶的說明就已經(jīng)講得很清楚了。IOS4提供的偽后臺(tái)支持后臺(tái)音樂播放,
3、GPS定位,網(wǎng)絡(luò)語音通話,以及任務(wù)完成。也就是說僅只有這四項(xiàng)工作可以真正在后臺(tái)運(yùn)行。所謂任務(wù)完成是指在程序退出的時(shí)候還有工作沒處理完,比如保存進(jìn)度存檔,那么系統(tǒng)允許程序在后臺(tái)繼續(xù)工作,然后在完成保存進(jìn)度之后停止運(yùn)行。除了上述四項(xiàng)后臺(tái)功能,系統(tǒng)還提供一個(gè)程序快速切換的功能,這個(gè)功能也算是IOS4多任務(wù)的一部分。個(gè)人觀點(diǎn),這個(gè)功能是IOS4多任務(wù)中最先進(jìn)最有用的功能。它讓程序在最小化的時(shí)候僅僅是暫停運(yùn)行,但并不釋放內(nèi)存,保持程序當(dāng)前的狀態(tài),這樣當(dāng)你再次打開這個(gè)程序的時(shí)候,程序不需要重新從硬盤(閃存)中讀出,不需要重新Load數(shù)據(jù),而是瞬間恢
4、復(fù)到上次退出程序時(shí)的狀態(tài),這個(gè)特性會(huì)給用戶很強(qiáng)的多任務(wù)的感覺,仿佛程序從來沒有退出過一樣。而這個(gè)功能所花費(fèi)的代價(jià)只是一塊內(nèi)存,而并不消耗cpu時(shí)間。什么意思呢?就是說快速切換并不比退出程序多耗一絲電,相反,由于再次打開程序的時(shí)候不需要讀硬盤(閃存),它比退出程序再重新啟動(dòng)更省電!關(guān)于程序快速切換,了解到這個(gè)程度還不夠,我們還需要知道更深入一點(diǎn)才能正確地使用Backgrounder。第一點(diǎn)是:為快速切換所保留的內(nèi)存空間是可以被擠占的。IOS4是沒有內(nèi)存交換空間的,它不會(huì)像Windows那樣把硬盤(閃存)虛擬成內(nèi)存來建立一個(gè)對(duì)應(yīng)用程序來說無
5、限的虛擬內(nèi)存空間。所以,在IOS4中,當(dāng)前臺(tái)程序內(nèi)存空間不足的時(shí)候,系統(tǒng)會(huì)釋放掉為后臺(tái)程序保留的用于快速切換的內(nèi)存,提供給前臺(tái)程序使用。當(dāng)然,如果所有能釋放的內(nèi)存都釋放了,還不能滿足前臺(tái)程序的內(nèi)存要求的話,系統(tǒng)會(huì)直接中止前臺(tái)程序的運(yùn)行,這就是我們?yōu)槭裁磿?huì)看到有些程序運(yùn)行中無故退出的原因。用于快速切換的內(nèi)存可以被擠占這個(gè)特性是很先進(jìn)的內(nèi)存動(dòng)態(tài)管理方式,特別適合于內(nèi)存資源緊張的移動(dòng)設(shè)備。這種內(nèi)存管理策略的優(yōu)點(diǎn)是在幾乎不消耗任何額外的時(shí)間(CPU時(shí)間,程序在后臺(tái)暫停)、空間(內(nèi)存空間,可以被擠占)資源的情況下,可以提供一個(gè)性能優(yōu)良的偽多任務(wù)環(huán)
6、境。但是正因?yàn)榭焖偾袚Q的內(nèi)存可以被擠占,所以它的缺點(diǎn)就是它不總是可用的。大家都有經(jīng)驗(yàn)打開Safari的時(shí)候,有時(shí)能夠直接顯示上次退出時(shí)候的網(wǎng)頁(yè),有時(shí)候就需要重新載入,就是這個(gè)原因。關(guān)于快速切換我們需要知道的另外一點(diǎn)是,在每個(gè)程序最小化的時(shí)候,系統(tǒng)都會(huì)給程序發(fā)送一個(gè)通知,告訴程序你現(xiàn)在已經(jīng)被最小化了。這時(shí)候一個(gè)優(yōu)雅、精良的程序會(huì)釋放掉可以釋放的一部分無關(guān)緊要的空間以節(jié)省內(nèi)存,比如畫面緩存。這個(gè)特性的意思是支持IOS4多任務(wù)的程序被快速切換到后臺(tái)以后占用的內(nèi)存空間會(huì)比在前臺(tái)運(yùn)行時(shí)少。Backgrounder的真后臺(tái)的操作方式就是在程序最小化
7、的時(shí)候不給程序發(fā)送這個(gè)最小化的通知,所以程序不知道自己已經(jīng)在后臺(tái)了,不僅是仍然占用和在前臺(tái)時(shí)一樣多的內(nèi)存,而且還在繼續(xù)運(yùn)行,和在前臺(tái)時(shí)一樣燒電。而除了幾個(gè)操作系統(tǒng)底層的精靈進(jìn)程之外,所有程序在IOS4的原生后臺(tái)狀態(tài)下都是暫停運(yùn)行的,不燒電的。不僅如此,就算是已經(jīng)在后臺(tái)的程序,如果它支持IOS4多任務(wù),那么它在收到系統(tǒng)發(fā)出的內(nèi)存不足通知的時(shí)候,它還可以繼續(xù)釋放更多內(nèi)存。比如Safari,在剛最小化的時(shí)候,它是保留所有打開的網(wǎng)頁(yè)的,之后如果系統(tǒng)發(fā)出內(nèi)存不足通知,Safari就可以一個(gè)一個(gè)地釋放已打開的網(wǎng)頁(yè)所占用的內(nèi)存。好了,說了這么多,就是
8、為了幫助大家正確選擇Backgrounder最重要的一項(xiàng)選擇:全局后臺(tái)模式選擇。對(duì)于這個(gè)選擇,小弟只有一個(gè)推薦:原生模式。下面就是global里的設(shè)置,是按照項(xiàng)目一個(gè)一個(gè)來的,紅色部分有的是我加上去的,方便