基于此example application 和这篇 Stackoverflow 帖子:Periodic iOS background location updates ,我已经成功地创建了一个用于定期后台位置跟踪的工作实现。
在设备上一切正常,我从 Xcode 安装应用程序,但对于我通过 crashlytics 发送应用程序的每个测试人员,应用程序仍然在后台超时。
它是否必须与调试/ Release模式或供应配置文件做任何事情?
最佳答案
您必须使用 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
关于iOS 后台位置跟踪在测试设备上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31119282/