在后台运行一段时间后,位置管理器停止工作

6

我正在开发一款应用程序,需要在前台和后台跟踪LocationUpdate。但是在后台经过一段时间间隔后,应用程序停止更新Location。当我把它带回前台时,它会重新开始工作;当我再次将其放入后台时,它又停止了。

我无法找到问题所在,请尽可能帮助我。


你的期望精度设置是多少? - AlexWien
你解决了你的问题吗?是什么原因引起的?你是如何解决它的?你可以回答自己的问题,这有助于其他人。 - AlexWien
2个回答

1

1
谢谢回复,但我已经在我的Plist文件中完成了这个操作。问题在于它更新了30-60分钟,然后停止更新位置。 - Himanshu
可能是由于距离过滤器的值太大。 - Inder Kumar Rathore
1
我已经使用了距离过滤器值等于10米。 - Himanshu

0
  • 禁用距离过滤器
  • 将所需精度设置为最佳

  • 使用-(void)startUpdatingLocation

iOS6中现在有:

locationManager:didUpdateLocations:

在iOS5中有

locationManager:didUpdateToLocation:fromLocation: 

第一种方法在后台缓冲位置并使您的应用程序保持睡眠状态,然后通过一系列修复唤醒它,而iOS5方法则始终提供位置。


由于我正在使用iOS 6,所以如何修复它以在后台获取每个位置更新。 - Himanshu
在那之后的几个小时里,你在后台失去了位置吗?还是只是延迟获取它们? - AlexWien
当应用程序在后台运行时,我会失去位置信息,当它回到前台时,它会从当前位置重新开始更新。那么在后台如何保持位置信息的更新? - Himanshu
这很有趣,请再次检查是否禁用了所有过滤器,使用desiredAccuracyBest,然后将应用程序兼容性设置为iOS 5,并使用iOS 5方法。进一步安装一个外国GPS应用程序,如Motion-X GPS,并检查它们是否可以在后台记录轨迹。 - AlexWien
我已经将距离过滤器的值设置为0.0,精度设置为最佳,但在后台运行时应用程序仍会在一段时间后停止更新。 - Himanshu
安装Motion-X GPS并进行测试,如果它能正常工作,那么问题就出在你身上;否则就是其他缺陷。 - AlexWien

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接