地图定位

地图定位2-iOS8.0定位配置

2016-07-19  本文已影响23人  codeTao

iOS8.0 之后定位

1.前台定位

1.创建位置管理者CLLocationManager,并设置代理

2.开始定位,调用方法

locationM.startUpdatingLocation()

3.在CLLocationManagerDelegate的代理方法中获取用户位置信息

iOS8.0后增加操作:

4.主动请求前台定位授权,

 locationM.requestWhenInUseAuthorization()

5.在info.plist中填写对应的key(一定要填key)

key :NSLocationWhenInUseUsageDescription

问题:

2.后台定位(需要在前台定位基础上,即先将上面5步做完)

测试环境: 一定要在iOS 8.0 中运行,不要在iOS9.0上运行!

方案一:

操作:
Capabilities -> Background Models -> 选中Location updates 打钩

location0.png

方案二:

条件:

效果:

locationM.requestAlwaysAuthorization()

3. 定位不到, 对应的代理方法不执行

解决:

  1. 首先,检查运行的模拟器是否是iOS8.0之前的系统版本
  2. 其次,检查模拟器是否设置位置数据
  3. 第三,确保代码无问题(一般都是代理没有设置,或者位置管理器对象是局部变量)
  4. 第四,模拟器BUG, 请将模拟器位置设为None,然后再次设置数据; 或者,重置模拟器
上一篇下一篇

猜你喜欢

热点阅读