? 今天因項目需求:軟件在后臺倒計時,結(jié)束后跳到B界面,簡單的了解了一下,程序進入后臺的幾種方法和程序的幾種狀態(tài)
一 程序的幾種狀態(tài)
停止運行-應用程序已經(jīng)終止(從任務管理器中移除),或者還未啟動。
不活動-應用程序處于前臺但不再接收事件(例如:鎖住了設(shè)備,接電話)。
活動-app處于“使用中”的狀態(tài)。
后臺-app不再屏幕上顯示,但它仍然執(zhí)行代碼。
掛起-app仍然駐留內(nèi)存但不再執(zhí)行代碼。
按下Home鍵時,app從活動狀態(tài)轉(zhuǎn)入后臺,絕大部分app通常在幾秒內(nèi)就從后臺變成了掛起。
二 后臺幾種方法
上面我們知道了程序的幾種狀態(tài),我們要講掛起的程序,進入后臺,官方給出了以下幾種方法

分別對應:后臺音頻;后臺定位;后臺語音服務;下載更新;Background Task? Completion(這個待會單獨說下);使用藍牙;作為藍牙對象;后臺信息更新;消息推送;
Background Task? Completion:這個接口早在iOS 4時候便擁有,其可以供任意類型的APP使用,不過在舊系統(tǒng)中,這個接口的后臺限制運行時間僅為10分鐘,意味著當應用退至后臺,其后臺運行僅能持續(xù)10分鐘便會轉(zhuǎn)至休眠狀態(tài)。iOS 7中對這個接口作出了改變,原來的為連續(xù)10分鐘,即不論你這10分鐘內(nèi)用戶是否關(guān)閉屏幕進入休眠狀態(tài),應用仍然會在后臺等待10分鐘完結(jié)后推出,而新的改進為假如遇到關(guān)閉屏幕休眠的情況,這后臺運行的10分鐘便會跟隨一同休眠,剩余的后臺時間將會留待用戶再一次喚醒設(shè)備才計算。這樣后臺運行的時間仍然為10分鐘,但并不連續(xù),這樣做的優(yōu)點為省電。
三 解決方法
方法1: 用后臺播放音頻的方法,如果沒有這個需求但是又想用這個方法,可以播放無聲的音樂!
頭文件:


并沒有詳細介紹網(wǎng)絡視頻的使用方法,包括,上一首,下一首,畢竟主題是介紹程序進入后臺
方法二 ? ?后臺定位

然后------

最后------

plist添加一個數(shù)組名為:Required background modes 數(shù)組元素添加對應的描述
方法一:App plays audio or streams audio/video using AirPlay
方法二:App registers for location updates
目前看了下這兩個,都比較簡單,后期用到其他的會繼續(xù)更新,如果有什么不足的地方,歡迎大家指正!
? ? ? ?編程是一條漫長的道路,前進的路上有你會更佳精彩,謝謝大家!