位置服务在两部iphone上的工作方式不同

时间:2011-06-24 20:14:17

标签: iphone objective-c location

所以我遇到了这个问题 - 我有一个超级简单的应用程序,所有它都可以通过UI上的On / Off按钮跟踪您的位置。我正在测试iPhone 3GS(版本4.3)和iPhone 4(版本5.0测试版),并突然在3GS上,当我点击关闭时,它没有停止 - 我仍然在状态栏上看到位置符号。

之前,它在3GS上运行良好 - 我可以开始,停止,发送到后台,再次启动。我的OFF按钮工作得很好 - 每当我停止位置时,位置指示器就会消失。 SAME代码在我的iPhone4上运行,没有任何问题。

我的问题是 - 有没有办法“清理”测试iPhone?想知道可能还有一些“饼干”类型的东西,我应该清理,所以它会再次工作......否则,我是无能为力的......

感谢!

3 个答案:

答案 0 :(得分:0)

即使应用程序在OS 4+的后台运行,LocationServices仍将继续获取更新,除非您在应用程序进入后台时停止更新。请参阅各种-stop ... methods on CLLocationManager。如果没有一些用于开始监控位置的代码,我无法提供更多帮助,因为有很多不同的位置监控选项。

答案 1 :(得分:0)

我有同样的问题。要清除与位置服务相关的任何内容,请转到设置并重置位置警告。

答案 2 :(得分:0)

我们遇到了同样的问题 - 它会在iOS 6设备上停止运行,但在运行5.1的设备上,stopUpdatingLocation无法运行&位置服务指标将保留在状态栏中。奇怪的是,我们用 -

修复了它
[locationManager stopUpdatingLocation];
[locationManager stopUpdatingHeading];
[locationManager stopMonitoringSignificantLocationChanges];

...即使我们仅使用[locationManager startUpdatingLocation];

启动它

这可能是iOS中的一个错误 - 在此修复之前我的代码看不出任何问题。