iOS后臺(tái)機(jī)制介紹

iOS7之前疲牵,APP是偽后臺(tái)模式承二。iOS7后,APP擁有四種真后臺(tái)模式纲爸,無論是哪一種后臺(tái)機(jī)制亥鸠,均需要利用蘋果給予的相應(yīng)后臺(tái)接口實(shí)現(xiàn)。IOS7系統(tǒng)中,開發(fā)者可以靈活利用多種后臺(tái)接口(API)實(shí)現(xiàn)更加智能的應(yīng)用操作负蚊。

  • 無后臺(tái)僅推送

    第一種后臺(tái)方式為傳統(tǒng)的無后臺(tái)操作神妹,僅有蘋果推送機(jī)制,這種方式出現(xiàn)在iOS 3.x以下的大部分系統(tǒng)版本上家妆。這個(gè)方式下鸵荠,應(yīng)用在按下Home鍵后即會(huì)關(guān)閉退出,其數(shù)據(jù)通過蘋果搭建的推送服務(wù)器傳輸伤极,并不需要應(yīng)用后臺(tái)運(yùn)行蛹找。這種方式 不太好的原因在于,每次推出后哨坪,重新進(jìn)入均需要重新加載庸疾,雖然推送能夠統(tǒng)一解決數(shù)據(jù)和信息的傳輸,但遇到需要頻繁進(jìn)入應(yīng)用(如聊天APP)的時(shí)候便會(huì)顯得體驗(yàn)不好当编。

  • 墓碑式

    第二種方式為墓碑式的后臺(tái)機(jī)制届慈,這在iOS 4后被大量采用,也就是人們所說的偽多任務(wù)忿偷。這方式相比較第一種改進(jìn)的地方在于金顿,按下Home鍵至主界面后,應(yīng)用隨即進(jìn)入后臺(tái)鲤桥,但其被凍結(jié)串绩,并不能進(jìn)行任何操作。

  • 智能調(diào)度后臺(tái)

    第三種為系統(tǒng)智能調(diào)度的后臺(tái)芜壁,iOS 7新增的background fetch礁凡, 這個(gè)后臺(tái)接口在蘋果WWDC 2013上有提及,其會(huì)根據(jù)用戶行為自動(dòng)調(diào)整達(dá)到 效率最優(yōu)的后臺(tái)模式慧妄,能夠處理不是很有時(shí)效性的信息獲取顷牌。例如一些社交、新聞?lì)惖膽?yīng)用的后臺(tái)信息更新塞淹,iOS系統(tǒng)便會(huì)根據(jù)應(yīng)用啟動(dòng)頻率窟蓝、時(shí)間和當(dāng)前網(wǎng)絡(luò)和電量``的狀況來智能分配每個(gè)應(yīng)用的后臺(tái)獲取頻率和啟動(dòng)時(shí)長
    由于擁有該接口的應(yīng)用的數(shù)據(jù)后臺(tái)刷新操作是統(tǒng)一調(diào)度的饱普,因此系統(tǒng)可以在一個(gè)進(jìn)程里面獲得多個(gè)應(yīng)用的數(shù)據(jù)运挫,類似統(tǒng)一的推送機(jī)制,這樣就能夠最大限度地省電套耕。 不過這個(gè)方式也有一個(gè)缺點(diǎn)谁帕,那便是開發(fā)者不能設(shè)定數(shù)據(jù)具體什么時(shí)候更新,因此這個(gè)后臺(tái)方式只能應(yīng)用在一些時(shí)效性和敏感度不高的地方冯袍。

  • 真后臺(tái)
    第四種方式便是 真后臺(tái)機(jī)制匈挖,但iOS的真后臺(tái)與Android的后臺(tái)機(jī)制是不一樣的碾牌,為了兼顧系統(tǒng)體驗(yàn)和統(tǒng)一進(jìn)程管理,iOS在這上面加入了眾多的限制儡循。大致?lián)碛幸韵聨讉€(gè)后臺(tái)接口模式:

    • ** Background Audio**舶吗,這是后臺(tái)的音頻,這個(gè)很早之前便有择膝,也是iOS設(shè)備中用得最多的后臺(tái)應(yīng)用誓琼,調(diào)用這個(gè)接口可以實(shí)現(xiàn)后臺(tái)的音樂播放。

    • Location Services肴捉,這是 后臺(tái)的定位踊赠,系統(tǒng)會(huì)擁有統(tǒng)一頁面進(jìn)行管理。

    • VoIP每庆,后臺(tái)語音服務(wù)筐带,類似Skype通話應(yīng)用需要調(diào)用,可進(jìn)行后臺(tái)的語音通話缤灵。

    • Newsstand伦籍,報(bào)刊雜志后臺(tái)自動(dòng)下載更新,其能夠自動(dòng)實(shí)時(shí)更新腮出。

    • Background Task Completion帖鸦,這個(gè)接口早在iOS 4時(shí)候便擁有,其可以供任意類型的APP使用胚嘲,不過在舊系統(tǒng)中作儿,這個(gè)接口的后臺(tái)限制運(yùn)行時(shí)間僅為10分鐘,意味著當(dāng)應(yīng)用退至后臺(tái)馋劈,其后臺(tái)運(yùn)行僅能持續(xù)10 分鐘便會(huì)轉(zhuǎn)至休眠狀態(tài)攻锰。iOS 7中對(duì)這個(gè)接口作出了改變, 原來的為連續(xù)10分鐘 妓雾,即不論你這10分鐘內(nèi)用戶是否關(guān)閉屏幕進(jìn)入休眠狀態(tài)惋啃,應(yīng)用仍然會(huì)在后臺(tái)等待10分鐘完結(jié)后推出指煎,而新的 改進(jìn)為 假如遇到關(guān)閉屏幕休眠的情況,這后臺(tái)運(yùn)行的10分鐘便會(huì)跟隨一同休眠吭敢,剩余的后臺(tái)時(shí)間將會(huì)留待用戶再一次喚醒設(shè)備才計(jì)算憨降。這樣后臺(tái)運(yùn)行的時(shí)間仍然為10分鐘钳榨,但并不連續(xù)担巩,這樣做的優(yōu)點(diǎn)為省電俩块。如現(xiàn)在有一些詞典應(yīng)用帶有后臺(tái)復(fù)制選詞功能,實(shí)際上其是利用了這個(gè)接口欢揖,如果用戶開啟詞典后并推出陶耍,即使屏幕關(guān)閉,但詞典仍然在后臺(tái)運(yùn)行浸颓,電量消耗還是比較大的物臂,在iOS 7上旺拉,這個(gè)問題可以得到解決产上。

    • Remote Notification棵磷,這是本次較大的一個(gè)改進(jìn)接口,以往聊天類應(yīng)用接受推送后點(diǎn)進(jìn)去需要再收一次信息晋涣,這情況在QQ仪媒、微信等應(yīng)用上最為明顯。不過擁 有了這個(gè)接口后谢鹊,這情況將不復(fù)存在算吩,以后推送將能夠直接啟動(dòng)后臺(tái)任務(wù)。值得注意的是remote notification支持silent notification(靜默推送)佃扼,這樣dropbox這類同步應(yīng)用可以在后臺(tái)以最節(jié)能的模式實(shí)時(shí)靜默同步了偎巢,類似布卡漫畫這種也可以推送正在追的漫畫的新章節(jié)并在后臺(tái)靜默下載,待到下載好再給用戶發(fā)送一個(gè)本地推送兼耀,用戶點(diǎn)開即看無需再聯(lián)網(wǎng)

    • Background Transfer Service压昼,后臺(tái)上傳下載。iOS最接近傳統(tǒng)多任務(wù)的后臺(tái)接口瘤运,可供任意類型的app調(diào)用窍霞,無時(shí)間限制。應(yīng)用場景包括后臺(tái)上傳下載數(shù)據(jù)拯坟,這使得游戲后臺(tái)更新數(shù)據(jù)包但金,后臺(tái)上傳視頻等等都成為可能,但是正如其名字郁季,它只能用于處理上傳下載這種傳輸類的任務(wù)冷溃,類似后臺(tái)剪切板監(jiān)控這種它就無能為力了。

    可以在TARGETS中查找相關(guān)選項(xiàng)即可查找到background模式的相關(guān)設(shè)置,并且這些設(shè)置最后會(huì)在pilist文件中有體現(xiàn)...
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末梦裂,一起剝皮案震驚了整個(gè)濱河市秃诵,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌塞琼,老刑警劉巖菠净,帶你破解...
    沈念sama閱讀 206,968評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異彪杉,居然都是意外死亡毅往,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門派近,熙熙樓的掌柜王于貴愁眉苦臉地迎上來攀唯,“玉大人,你說我怎么就攤上這事渴丸『钹郑” “怎么了另凌?”我有些...
    開封第一講書人閱讀 153,220評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長戒幔。 經(jīng)常有香客問我吠谢,道長,這世上最難降的妖魔是什么诗茎? 我笑而不...
    開封第一講書人閱讀 55,416評(píng)論 1 279
  • 正文 為了忘掉前任工坊,我火速辦了婚禮,結(jié)果婚禮上敢订,老公的妹妹穿的比我還像新娘王污。我一直安慰自己,他們只是感情好楚午,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評(píng)論 5 374
  • 文/花漫 我一把揭開白布昭齐。 她就那樣靜靜地躺著,像睡著了一般矾柜。 火紅的嫁衣襯著肌膚如雪阱驾。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,144評(píng)論 1 285
  • 那天把沼,我揣著相機(jī)與錄音啊易,去河邊找鬼。 笑死饮睬,一個(gè)胖子當(dāng)著我的面吹牛租谈,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播捆愁,決...
    沈念sama閱讀 38,432評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼割去,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼!你這毒婦竟也來了昼丑?” 一聲冷哼從身側(cè)響起呻逆,我...
    開封第一講書人閱讀 37,088評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎菩帝,沒想到半個(gè)月后咖城,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,586評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡呼奢,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評(píng)論 2 325
  • 正文 我和宋清朗相戀三年宜雀,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片握础。...
    茶點(diǎn)故事閱讀 38,137評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡辐董,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出禀综,到底是詐尸還是另有隱情简烘,我是刑警寧澤苔严,帶...
    沈念sama閱讀 33,783評(píng)論 4 324
  • 正文 年R本政府宣布,位于F島的核電站孤澎,受9級(jí)特大地震影響届氢,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜亥至,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評(píng)論 3 307
  • 文/蒙蒙 一悼沈、第九天 我趴在偏房一處隱蔽的房頂上張望贱迟。 院中可真熱鬧姐扮,春花似錦、人聲如沸衣吠。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽缚俏。三九已至惊搏,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間忧换,已是汗流浹背恬惯。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評(píng)論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留亚茬,地道東北人酪耳。 一個(gè)月前我還...
    沈念sama閱讀 45,595評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像刹缝,于是被迫代替她去往敵國和親碗暗。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容