引用百度地图API文档一段话:
5、自iOS SDK v2.5.0起,为了对iOS8的定位能力做兼容,做了相应的修改,开发者在使用过程中注意事项如下: 需要在
info.plist
里添加(以下二选一,两个都添加默认使用NSLocationWhenInUseUsageDescription
):
NSLocationWhenInUseUsageDescription
,允许在前台使用时获取GPS的描述
NSLocationAlwaysUsageDescription
,允许永久使用GPS的描述
iOS8开启定位服务需要在info.plist
里添加这两个键值对,在设置-隐私-定位服务,打开一个应用程序可以看到:
永不
使用应用程序期间
始终
我遇到的问题是打开设置-隐私-定位服务-我的应用程序,闪退。
原因是我设置的NSLocationWhenInUseUsageDescription
值为Bool
类型,把类型改成String
就可以了。同时这段字符串也会显示在第一次开启定位的提示框以及设置-隐私-定位服务-应用程序里面。