[iOS 8]定位失效,设置定位奔溃解决方法

先说说定位失效的【设置定位崩溃在下面会说】,
由于iOS8定位分为 “使用期间”定位 和 “始终”定位,所以需要做一下修改:
Demo请戳右边->Demo1219

主要修改如下:
1) info.plist 新增如下:
key为NSLocationWhenInUseUsageDescription string类型 value随便写用于描述
key为NSLocationAlwaysUsageDescription string类型 value随便写用于描述

NSLocationWhenInUseUsageDescription 则为“使用期间”定位
NSLocationAlwaysUsageDescription 则为“始终”定位
QQ20141219-1@2x

2)代码加入如下:
除了在初始化的时候加,也可以在CLLocationManagerDelegate的方法可以加。
[objc]
//locManager 为 CLLocationManager
[locManager requestWhenInUseAuthorization];//使用期间
[locManager requestAlwaysAuthorization];//始终
[/objc]

———————————————
接下来说下,网上经常说的【设置定位崩溃】问题
主要出现如下情况:
APP设置了定位许可,可是在 设置>隐私>定位 修改对应APP崩溃。

主要原因:
网上的很多帖子,都在设置info.plist的时候弄错。
NSLocationWhenInUseUsageDescription和NSLocationAlwaysUsageDescription是string类型,
并不是BOOL类型,如果在设置BOOL类型,在修改对应APP的时候就会崩溃。
而设置value并不是设置YES或者NO,而是描述,这个可以详见下图。
IMG_0086
IMG_0088
IMG_0090
IMG_0087

71 thoughts on “[iOS 8]定位失效,设置定位奔溃解决方法

Gvlfoy进行回复 取消回复

电子邮件地址不会被公开。