【问题标题】:Which UIApplicationDelegate methods get called when my app receives a significant location change?当我的应用收到重大位置更改时,会调用哪些 UIApplicationDelegate 方法?
【发布时间】:2011-05-04 16:21:30
【问题描述】:

我已将我的应用设置为使用 startMonitoringSignificantLocationChanges 或 CLLocationManager 收听重大位置变化。

因此,当设备的位置发生重大变化时,我的应用会获得一些执行时间来处理此更改。但是调用了UIApplicationDelegate 的哪些方法呢? applicationDidEnterBackground? applicationWillEnterForeground?

测试这样的东西对我来说很痛苦,因为我没有 MacBook,而且无法模拟这些位置变化。

【问题讨论】:

    标签: iphone objective-c cocoa-touch cllocationmanager uiapplicationdelegate


    【解决方案1】:

    startMonitoringSignificantLocationChanges Documentation

    此方法以异步方式启动位置事件的传递,并在您调用它后立即返回。位置事件被传递到您的代理的 locationManager:didUpdateToLocation:fromLocation: 方法。要传递的第一个事件通常是最近缓存的位置事件(如果有),但在某些情况下可能是较新的事件。获取当前位置修复可能需要几秒钟的时间,因此请务必检查委托方法中位置事件的时间戳。

    您需要实现与 CLLocationManagerDelegate 关联的 delagate 方法,直到那时您的应用程序才会正确响应。

    【讨论】:

    • 这是否意味着UIApplicationDelegate 的任何方法都不会在收到重大位置更改时被调用?
    猜你喜欢
    • 1970-01-01
    • 2010-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-11
    • 1970-01-01
    相关资源
    最近更新 更多