2015-10-07 96 views
1

我一直在開發一個應用程序,使用位置服務的iOS與迅速。在ios9之前它一直很棒。出於某種原因,我的應用在放入後臺時會停止運行,但只能在物理設備上運行。模擬器在後臺運行良好。我通過NSLog記錄東西,所以我可以告訴它停在設備上而不是SIM卡上。應用程序背景刷新ios9 swift

是的我有info.plist集。是的,我打開了背景功能。這真的在iOS8中工作,但由於某種原因,9應用程序停止在後臺執行。

我在設置中打開了背景刷新功能,並且我的應用設置爲始終請求位置更新,該位置更新也在手機設置中打開。

爲什麼會發生這種情況,我有點不知所措,所以我猜測可能是我需要實現xcode7和/或ios9的某些代碼更改。

任何幫助非常感謝!

羅布

回答

2

所以看起來蘋果公司要求在iOS9一個新事物:

allowsBackgroundLocationUpdates = true 

這是外景經理。

我最後的代碼如下所示:

// this is needed for ios9 to get the location even when it's backgrounded 
    if #available(iOS 9.0, *) { 
     self.locationManager.allowsBackgroundLocationUpdates = true 
    } else { 
     // Fallback on earlier versions 
    } 
+0

乾杯兄弟,你 – Gmeister4

+0

有點笨救了我如何,如果你不知道這一點,不要讓你的應用程序更新,IOS 9的用戶不能使用該功能! – Gmeister4

+0

是的,這非常令人沮喪。驅使我堅持了一個星期! – throb