首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MKMapView -当AirPlane模式打开时,无法定位用户位置

MKMapView -当AirPlane模式打开时,无法定位用户位置
EN

Stack Overflow用户
提问于 2013-06-19 18:22:15
回答 2查看 653关注 0票数 1

我使用MKMapView类进行开发,当在设备(iPhone5)上运行时,打开AirPlane模式,打开Wi-Fi,

以及MKMapView的属性:showsUserLocation设置为YES,MKMapView的委托

- (void)mapView:(MKMapView *)mapView didFailToLocateUserWithError:(NSError *)error

,则返回一个错误。

代码语言:javascript
复制
Turn off airplane mode or use Wi-Fi to show your location on the map

告诉我关闭AirPlane模式或打开Wi-Fi以获取地图上的位置。我的飞行模式是打开的,但我的Wi-Fi是启用的,为什么我找不到我的位置?

是MKMapView的bug,还是别的什么?谢谢!

EN

回答 2

Stack Overflow用户

发布于 2013-06-19 18:31:25

The apple documentation says

确定位置服务是否可用的

每个基于iOS的设备都能够以某种形式支持位置服务,但仍然存在位置服务可能不可用的情况:

用户可以在设置应用程序中禁用定位服务。

用户可以拒绝特定应用程序的定位服务。

设备可能处于飞行模式,无法打开必要的硬件电源。由于这些原因,建议您在尝试启动标准或重大更改的位置服务之前,始终调用CLLocationManager的locationServicesEnabled类方法。(在iOS 3.x及更早版本中,请检查locationServicesEnabled属性的值。)如果这个类方法返回YES,您就可以按计划启动位置服务。如果返回NO,而您仍尝试启动定位服务,系统将提示用户确认是否应重新启用定位服务。考虑到很可能故意禁用位置服务,用户可能不欢迎此提示。

不,不是bug,在文档中已经明确说明了怎么做

票数 1
EN

Stack Overflow用户

发布于 2013-06-19 18:24:26

我相信,当飞机模式打开时,它会关闭所有可能的跟踪你位置的方法,包括wi-fi。

你可以在通过wi-fi连接到互联网的同时打开飞行模式,并通过safari访问任何网页,从而在你的设备上试用它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17188806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档