iOS程式進入後臺,倒數計時暫停解決方法

程式鬼發表於2018-01-18

  今天因專案需求:軟體在後臺倒數計時,結束後跳到B介面,簡單的瞭解了一下,程式進入後臺的幾種方法和程式的幾種狀態

一 程式的幾種狀態

停止執行-應用程式已經終止(從工作管理員中移除),或者還未啟動。

不活動-應用程式處於前臺但不再接收事件(例如:鎖住了裝置,接電話)。

活動-app處於“使用中”的狀態。

後臺-app不再螢幕上顯示,但它仍然執行程式碼。

掛起-app仍然駐留記憶體但不再執行程式碼。

按下Home鍵時,app從活動狀態轉入後臺,絕大部分app通常在幾秒內就從後臺變成了掛起。

二 後臺幾種方法


上面我們知道了程式的幾種狀態,我們要講掛起的程式,進入後臺,官方給出了以下幾種方法

iOS程式進入後臺,倒數計時暫停解決方法
Background Modes

分別對應:後臺音訊;後臺定位;後臺語音服務;下載更新;Background Task  Completion(這個待會單獨說下);使用藍芽;作為藍芽物件;後臺資訊更新;訊息推送;

Background Task  Completion:這個介面早在iOS 4時候便擁有,其可以供任意型別的APP使用,不過在舊系統中,這個介面的後臺限制執行時間僅為10分鐘,意味著當應用退至後臺,其後臺執行僅能持續10分鐘便會轉至休眠狀態。iOS 7中對這個介面作出了改變,原來的為連續10分鐘,即不論你這10分鐘內使用者是否關閉螢幕進入休眠狀態,應用仍然會在後臺等待10分鐘完結後推出,而新的改進為假如遇到關閉螢幕休眠的情況,這後臺執行的10分鐘便會跟隨一同休眠,剩餘的後臺時間將會留待使用者再一次喚醒裝置才計算。這樣後臺執行的時間仍然為10分鐘,但並不連續,這樣做的優點為省電。

三 解決方法

方法1: 用後臺播放音訊的方法,如果沒有這個需求但是又想用這個方法,可以播放無聲的音樂!

標頭檔案:

iOS程式進入後臺,倒數計時暫停解決方法
標頭檔案
iOS程式進入後臺,倒數計時暫停解決方法
背景音訊方法

並沒有詳細介紹網路視訊的使用方法,包括,上一首,下一首,畢竟主題是介紹程式進入後臺

方法二    後臺定位

iOS程式進入後臺,倒數計時暫停解決方法
後臺定位

然後------

iOS程式進入後臺,倒數計時暫停解決方法
勾選對應的方法

最後------

iOS程式進入後臺,倒數計時暫停解決方法
plist新增

plist新增一個陣列名為:Required background modes 陣列元素新增對應的描述

方法一:App plays audio or streams audio/video using AirPlay

方法二:App registers for location updates




目前看了下這兩個,都比較簡單,後期用到其他的會繼續更新,如果有什麼不足的地方,歡迎大家指正!

       程式設計是一條漫長的道路,前進的路上有你會更佳精彩,謝謝大家!

相關文章