基于此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