国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

iOS-iOS7的后臺多任務(Multitasking)對比之前的異同、具體機制、變化

2019-11-14 20:33:33
字體:
來源:轉載
供稿:網友


簡單來說,這玩意是對開發者友好,但對設備不友好的(可能會偷偷摸摸地占用流量和電量)。
對用戶來說,如果你帶寬夠,對發熱不敏感的話,會得到更好的應用體驗。

從 iOS 4 開始,應用就可以在退到后臺后,繼續運行一小段時間了(10 分鐘)。
此外還可以把自己聲明為需要在后臺運行,就能不限時地運行了。不過限制為播放音樂、使用 GPS 等。值得一提的是,有的應用為了達到后臺不限時運行的目的,在后臺播放無聲的音樂(審核不一定會被發現)。
iOS 5 開始又多了一種類型:下載報刊雜志。
然后 iOS 7 則可以下載各種玩意和定時抓取。

不過對于開發者來說,iOS 7 還有 2 個需要注意的區別:

  1. iOS 7 以前,應用進入后臺繼續運行時,如果用戶鎖屏了,那么 iOS 會等待應用運行完,才進入睡眠狀態。
    而在 iOS 7 上,系統會很快進入睡眠狀態,那些后臺應用也就暫停了。如果收到事件被喚醒(例如定時事件、推送、位置更新等),后臺應用才能繼續運行一會。
    因為處理過程變成了斷斷續續的,因此下載時也要使用 NSURLsession 來處理(即下文中的 Background Transfer Service)。
  2. 由于 App Switcher 的存在,應用即使在后臺,用戶仍然能看到它在退出前的快照。如果有什么不可見人的東西(例如剛拍的艷照啦,勁爆的聊天內容啦,銀行卡密碼什么的),就處理下界面來隱藏吧。

順便再介紹下三個新東西:

  1. Background Fetch。可以設置應用在后臺至少隔多久時間就去抓取一下更新(注意是至少,不保證達到這個頻率)。以微博來舉例,如果用戶的微博被別人評論了,iOS 7 之前得讓微博的服務器來推送一條通知,用戶接收到后,進入該條微博,等待加載該評論;而 iOS 7 上則可以讓用戶每隔一定時間(如一分鐘)查詢一下有沒有更新,發現有則下載更新的內容,然后發送一條本地通知給用戶,用戶接收到后,進入該條微博,顯示在后臺下載好的評論內容。如果需要的話,連 timeline 都能給你提前更新了。
  2. 很顯然,這種做法體驗更好,但更費流量和電池。
  3. ??Silent Remote Notification。iOS 7 之前的推送會直接彈出一個對話框,用戶確認后才會進入應用;而 iOS 7 上則可以不彈出對話框,而是直接通知應用去下載更新,等下完后再發送本地通知給用戶,這樣用戶進入應用后,就能直接看到更新的內容了。
    這種做法就比前者好些,不需要在后臺輪詢了。只是用戶如果對更新內容不感興趣,也會被強制下載。
    為了避免被濫用,這種推送有頻率限制(每小時幾次),所以推送 QQ、微信這類經常被刷屏的消息肯定沒戲。
  4. ??Background Transfer Service。iOS 7 之前的應用可以在后臺繼續運行一段時間來下載,但如果因為各種原因而導致應用被退出了(被用戶殺掉,內存不足或超時被系統殺掉等),那么下載是得不到保證的。iOS 7 的后臺傳輸服務則可以讓系統去下載,出錯或下完后通知并喚醒應用來處理。
    對用戶來說的好處就是,想離線緩存影片時,可以讓優酷之類的應用在后臺下載,自己放點音樂看看漫畫,而不用傻傻地開著優酷等待下完。上傳當然也是支持的,基友再也不用擔心你沒空發小電影什么的了。此外,1 和 2 里提到的后臺下載,也都會用到 3。
    為了避免浪費流量,該服務只會在 WiFi 環境下才進行傳輸。

需要特別注意的是:應用被以上三類喚醒時,只被給予幾秒鐘時間來處理更新。

要總結的話,我預測下一代 iphone 待機時間會減少,實際可用時間減少,但官方標稱的使用時間不變。

 

 出處:知乎

 本文版權歸作者和博客園共有,歡迎轉載,但必須保留此段聲明,且在文章頁面明顯位置給出原文連接。                                  


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 恩平市| 巴林右旗| 墨玉县| 类乌齐县| 称多县| 娱乐| 报价| 宁乡县| 前郭尔| 扬中市| 桂林市| 平昌县| 青川县| 山东省| 寿宁县| 勐海县| 林州市| 喀喇沁旗| 莲花县| 茶陵县| 天门市| 株洲县| 曲麻莱县| 武乡县| 眉山市| 东城区| 开原市| 桦川县| 鹤山市| 宁波市| 临湘市| 兴海县| 黄骅市| 油尖旺区| 金溪县| 体育| 克拉玛依市| 健康| 健康| 科技| 大关县|