【问题标题】:CLLocationManager callbacks (locationManager:didUpdateToLocation:fromLocation and locationManager:didFailWithError:) never calledCLLocationManager 回调(locationManager:didUpdateToLocation:fromLocation 和 locationManager:didFailWithError:) 从未调用
【发布时间】:2012-06-01 11:08:58
【问题描述】:

我正在尝试获取当前位置,我正在处理这个问题:

大约 90% 的时间。它只是做的很好:它获取位置并调用didUpdateToLocation:,或者它失败并调用didFailWithError:。一切如预期。

但有时(*总是在 iOS 4.2 模拟器中,有时在真正的 iPhone 4S 设备上),它根本无法获取位置并且它不调用任何回调(有时它调用 didFailWithError 但 2 或 3开始更新位置后几分钟,有时它永远不会这样做),所以我找不到方法来意识到这一点。

顺便说一句,无法获取位置的是设备/模拟器,因为当发生这种情况时,地图应用程序也获取位置,无限期地显示动画活动轮。服务已启用,并且一切都配置良好,因为它在大多数情况下都可以正常工作。

那么,问题是:有没有办法让我知道这种情况并告知用户?

提前谢谢大家

【问题讨论】:

    标签: iphone ios location cllocationmanager


    【解决方案1】:

    我认为解决此问题的唯一方法是设置一个计时器并通知用户如果在合理的时间(例如,20 或 30秒)。然后拨打stopUpdatingLocation,稍后再试。

    我不知道是否记录了这种行为,但似乎不能保证您会从位置管理器那里得到响应,因为它可能会长时间处于无法修复位置的状态但也没有观察到错误。

    【讨论】:

    • 这正是我的想法和我想做的事情。感谢您的回复
    猜你喜欢
    • 2014-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-25
    • 2011-11-29
    • 2016-05-07
    • 2019-02-09
    • 2017-08-26
    相关资源
    最近更新 更多