iOS 6 AutoPause doesn#39;t work(iOS 6 自动暂停不起作用)
问题描述
我已经按照Session 303 - 从定位服务保持跟踪"WWDC 2012 中的 AutoPause 示例
I've follow the example of AutoPause from "Session 303 - Staying on track from Location Services" WWDC 2012
在示例中,您可以看到 AutoPause 是如何启用的,并且有两个方法被调用:
In the example you can see how AutoPause is enabled and there two methods which are called:
-(void) locationManagerDidPauseLocationUpdates:(CLLocationManager *)manager
-(void) locationManagerDidResumeLocationUpdates:(CLLocationManager *)manager
我做了同样的例子,但这些方法从来没有被调用过.谁试过了?
I've done the same example but these methods aren't never called. Who have tried the same?
推荐答案
我现在正在尝试,以下是我的观察:
I'm experimenting with that right now and here are my observations:
在 iPhone 4 上,这根本不起作用.即使您将 pausesLocationUpdatesAutomatically 设置为 YES,它也会将 pausesLocationUpdatesAutomatically 设置为 NO(0).没有警告,这是什么 API 设计反模式!
On iPhone 4, that is not working at all. Even if you set pausesLocationUpdatesAutomatically to YES it keeps pausesLocationUpdatesAutomatically as NO(0). No warnings, what kind of API design anti-pattern is this!
在 iPhone 5 上 pausesLocationUpdatesAutomatically 默认为 YES (1).并调用 locationManagerDidPauseLocationUpdates.我在调用 locationManagerDidResumeLocationUpdates 时运气不好.我也很困惑,如果 GPS 关闭,这将如何调用?一旦用户到达下一个网络单元,它会被调用吗?即使那不是我的经验,也从来没有被调用过.
On iPhone 5 pausesLocationUpdatesAutomatically is YES (1) by default. And locationManagerDidPauseLocationUpdates is called. I'm having a bad luck having the locationManagerDidResumeLocationUpdates called. I'm also puzzled how this is going to be called if GPS is off? Will it be called once user reaches the next network cell? Even that is not my experience, it is not ever called.
到目前为止,在我看来,这是 iOS6 中一致性最差的变化之一.对于所有场景,我可能只使用 pausesLocationUpdatesAutomatically = NO,并希望在 iOS6 的所有型号上都能正常工作.
So far, looks to me as one of the least consistent changes in iOS6. I might be going with just pausesLocationUpdatesAutomatically = NO for all scenarios and will hope that works ok on all models with iOS6.
[更新 - 2013 年 3 月 4 日].我查看了 Apple 关于 iOS6 中位置更改的演示文稿,他们建议在收到区域更改事件后使用区域更改监控来取消暂停".虽然这不适合我的场景,因为用户可能会去/跑步/开车一两公里,直到发生此类事件.
[Update - 4-Mar-2013]. I looked through the Apple's presentation for location changes in iOS6 and they suggest to use the region changes monitoring to "un-pause" once you get region changes event. Though this is not suitable for my scenarios as user might go/run/drive for a kilometer or two until such an event happens.
这篇关于iOS 6 自动暂停不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:iOS 6 自动暂停不起作用
基础教程推荐
- 如何在 iPhone 上显示来自 API 的 HTML 文本? 2022-01-01
- Android:对话框关闭而不调用关闭 2022-01-01
- 如何让对象对 Cocos2D 中的触摸做出反应? 2022-01-01
- 当从同一个组件调用时,两个 IBAction 触发的顺序是什么? 2022-01-01
- android 应用程序已发布,但在 google play 中找不到 2022-01-01
- 如何在 UIImageView 中异步加载图像? 2022-01-01
- Kivy Buildozer 无法构建 apk,命令失败:./distribute.sh -m “kivy"d 2022-01-01
- 如何在没有IB的情况下将2个按钮添加到右侧的UINavigationbar? 2022-01-01
- 在 gmail 中为 ios 应用程序检索朋友的朋友 2022-01-01
- UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效? 2022-01-01