基於此example application 和此Stackoverflow帖子:Periodic iOS background location updates,我設法創建了一個定期的背景位置跟蹤的工作實現。iOS在測試設備上的背景位置跟蹤失敗
一切運行良好的設備上,我從Xcode安裝應用程序,但我發送應用程序通過crashlytics應用程序仍然超時在後臺每個測試。
是否需要對調試/發佈模式或配置文件進行任何操作?
基於此example application 和此Stackoverflow帖子:Periodic iOS background location updates,我設法創建了一個定期的背景位置跟蹤的工作實現。iOS在測試設備上的背景位置跟蹤失敗
一切運行良好的設備上,我從Xcode安裝應用程序,但我發送應用程序通過crashlytics應用程序仍然超時在後臺每個測試。
是否需要對調試/發佈模式或配置文件進行任何操作?
你一定要正確使用後臺位置的權限?您是在iOS 7還是iOS 8上測試/部署?請查看以下文章以獲取更多信息:http://nshipster.com/core-location-in-ios-8/
不是。這是問題所在。示例代碼正在使用完全過時。沒有人應該使用。在大約10行代碼中,可以使用適當的實現。 –
嗨你有沒有在Appdelegate中嘗試過以下內容?
- (void)applicationWillResignActive:(UIApplication *)application
{
[locationManager startUpdatingLocation];
//`locationManager` is object of `CLLocationManager`
}
我可以試試 –
我的朋友有同樣的問題。所以他在appdelegate嘗試了這個,現在的應用程序工作正常 –
您必須使用applicationDidEnterBackground方法在後臺模式下獲取更新位置。我已經下載從GitHub源,在這個有沒有下面的方法來實現的:
- (void)applicationDidEnterBackground:(UIApplication *)application
{
}
你必須使用這樣的:
- (void)applicationDidEnterBackground:(UIApplication *)application
{
[self.shareModel.anotherLocationManager stopMonitoringSignificantLocationChanges];
if(IS_OS_8_OR_LATER) {
[self.shareModel.anotherLocationManager requestAlwaysAuthorization];
}
[self.shareModel.anotherLocationManager startMonitoringSignificantLocationChanges];
}
欲瞭解更多詳細信息,您可以參考鏈接: http://mobileoop.com/getting-location-updates-for-ios-7-and-8-when-the-app-is-killedterminatedsuspended
你使用什麼超時? 180秒? – Templar