【问题标题】:Best way to make iPhone CoreLocation call on a separate thread?在单独的线程上进行 iPhone CoreLocation 调用的最佳方法?
【发布时间】:2011-04-06 04:46:47
【问题描述】:

有没有办法启动一个线程来调用 CoreLocation 几次,然后它会在获得一定精度的位置时更新 UI?

【问题讨论】:

    标签: ios iphone multithreading asynchronous core-location


    【解决方案1】:

    通常,您不需要单独的线程。在您的CLLocationManagerDelegate 中,您的-locationManager:didUpdateToLocation:fromLocation: 方法在每次CL 更新时都会被调用。检查准确性(可能还有时间戳)并相应地更新您的 UI。

    【讨论】:

    • 感谢您的回复,但这是交易 - 我想在拍照时获取位置,将其存储到数据库中,并使用它来获取天气信息。天气信息获取器使用 NSXMLParser,所以我只需将其关闭,然后在解析完成时使用 parserDidEndDocument 来触发行更新程序。所以我想要对 coreLocation 做类似的事情 - 启动一个 CL 进程,然后当它获得足够准确的位置或超时时,存储数据然后启动天气代码。我希望这一切都异步发生。
    • 哦,等等,我刚刚更仔细地阅读了文档。我一直在使用 cllocation,就好像它是一个同步调用一样,并且不明白它只是按照你说的那样做,你可以使用 didUpdateToLocation 接收更新。所以看起来我可以做我刚才描述的所有事情。
    猜你喜欢
    • 2012-10-02
    • 2010-10-14
    • 1970-01-01
    • 2011-08-30
    • 2015-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-19
    相关资源
    最近更新 更多