ios8以后 都是手动授权定位权限 不过不处理这块 在ios8以后的系统就会默认永不授权
即关闭了定位权限
处理办法如下
.导入框架头文件 #import <CoreLocation/CoreLocation.h>
.声明实例变量 CLLocationManager *locationManager
.初始化第一步关键:
if(!locationManager){
locationManager = [[CLLocationManager alloc] init];
if(isAfterIOS8)
[locationManager requestWhenInUseAuthorization];//iOS8以后手动获取授权认证(允许在前台获取GPS的描述)
/*//获得定位的永久授权 前台和后台都能获取GPS的描述
[locationManager requestAlwaysAuthorization];//以上方法二选一 根据项目需求而定
*/
}
然后再处理相关地图方法 开启定位啊还是什么的 第三方的 比如:百度的地图 初始化 调用等
.其次是配置info.plist 文件
选择了哪种授权就要添加对应关键字Key Value选填(是个string类型比如”同意该服务将会更好的使用该应用" 我看还有写bool的 也没报错)
允许前台获取GPS描述 key——>NSLocationWhenInUseUsageDescription
允许永久获取GPS描述 key———>NSLocationAlwaysUsageDescription
.然后 应用就会像之前一样 安装的首次开启会提示您是否要同意该项定位服,同意的话即可正常操作应用的定位功能,不同意的话,只有在设置->隐私->定位服务->找到你对应的App进行设置了