我在我的AppDelegate下面的代碼:迅速後臺取指不工作
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
application.registerUserNotificationSettings(UIUserNotificationSettings(forTypes: [.Alert, .Badge, .Sound], categories: nil))
application.setMinimumBackgroundFetchInterval(UIApplicationBackgroundFetchIntervalMinimum)
return true
}
func application(application: UIApplication, performFetchWithCompletionHandler completionHandler: (UIBackgroundFetchResult) -> Void) {
completionHandler(UIBackgroundFetchResult.NewData)
getData()
}
func getData(){
// function that gets certain data from the server and notifies the
// user of the info fetched
}
我這裏面臨兩個問題:
的第一個問題是,後臺提取所從來沒有,除非執行我點擊「調試>模擬背景獲取」。我無限期地等待着它,它從來沒有被自己調用過。
第二個問題是,當我點擊模擬背景獲取,而我的應用程序仍然打開時,模擬器存在應用程序,然後執行後臺獲取,即使應用程序運行時後臺獲取仍應該工作並沒有關閉它。
我是否缺少任何與背景獲取相關的代碼?還是有任何錯誤的代碼?這是我編寫的唯一一個與後臺提取相關的代碼,而不是將背景提取添加到功能。
但如果用戶的手機系統決定觸發當用戶正在使用的應用程序在後臺讀取,完成這個關閉,他/她的應用程序,而他們在使用它? biz我想到了「模擬後臺獲取」類似於系統的執行情況,這就是當我運行「模擬後臺獲取」時發生的事情。 –
如果用戶使用的應用程序,它不是後臺,所以永遠不會被觸發。 – Agreensh