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进行设置了
时间: 2024-10-12 16:15:40