iOS 6 自动暂停不起作用

2023-12-07

我遵循“自动暂停”的示例会话 303 - 通过定位服务保持正轨” 2012 年全球开发者大会

在示例中,您可以看到如何启用自动暂停以及调用两个方法:

-(void) locationManagerDidPauseLocationUpdates:(CLLocationManager *)manager
-(void) locationManagerDidResumeLocationUpdates:(CLLocationManager *)manager

我已经完成了相同的示例,但这些方法从未被调用过。 谁有同样的尝试?


我现在正在尝试,以下是我的观察结果:

在 iPhone 4 上,这根本不起作用。即使您将pausesLocationUpdatesAutomatically 设置为YES,它也会将pausesLocationUpdatesAutomatically 保留为NO(0)。没有警告,这是什么 API 设计反模式!

在 iPhone 5 上默认情况下,pausesLocationUpdatesAutomatically 为“是”(1)。并且调用locationManagerDidPauseLocationUpdates。我运气不好,调用了 locationManagerDidResumeLocationUpdates 。我也很困惑,如果 GPS 关闭,这将如何被调用?一旦用户到达下一个网络单元,它会被调用吗?即使这不是我的经验,也从未被称为。

到目前为止,我认为这是 iOS6 中最不一致的变化之一。我可能会在所有情况下只使用“pausesLocationUpdatesAutomatically = NO”,并希望它在所有 iOS6 型号上都能正常工作。

[更新 - 2013 年 3 月 4 日]。我浏览了苹果公司关于 iOS6 中位置变化的演示,他们建议一旦收到区域更改事件,就使用区域更改监控来“取消暂停”。尽管这不适合我的场景,因为用户可能会走/跑/开车一两公里,直到发生此类事件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS 6 自动暂停不起作用 的相关文章

随机推荐