iOS 8以后 定位手动授权问题

ios8以后 都是手动授权定位权限 不过不处理这块 在ios8以后的系统就会默认永不授权
 即关闭了定位权限
处理办法如下
1.导入框架头文件 #import <CoreLocation/CoreLocation.h>
2.声明实例变量  CLLocationManager *locationManager
3.初始化第一步关键:
if(!locationManager){

        locationManager = [[CLLocationManager alloc] init];

        if(isAfterIOS8)

        [locationManager requestWhenInUseAuthorization];//iOS8以后手动获取授权认证(允许在前台获取GPS的描述)

       /*//获得定位的永久授权 前台和后台都能获取GPS的描述

        [locationManager requestAlwaysAuthorization];//以上方法二选一 根据项目需求而定

       */

    }

然后再处理相关地图方法 开启定位啊还是什么的 第三方的 比如:百度的地图 初始化 调用等

4.其次是配置info.plist 文件

选择了哪种授权就要添加对应关键字Key   Value选填(是个string类型比如”同意该服务将会更好的使用该应用" 我看还有写bool的 也没报错)

允许前台获取GPS描述  key——>NSLocationWhenInUseUsageDescription
允许永久获取GPS描述  key———>NSLocationAlwaysUsageDescription

5.然后 应用就会像之前一样 安装的首次开启会提示您是否要同意该项定位服,同意的话即可正常操作应用的定位功能,不同意的话,只有在设置->隐私->定位服务->找到你对应的App进行设置了
原文地址:https://www.cnblogs.com/someonelikeyou/p/4241560.html