99 CLLocation的基本使用
2015-11-05 10:33
281 查看
1.定位的基本使用:
1>iOS7只要开始定位, 系统就会自动要求用户对你的应用程序授权. 但是从iOS8开始, 想要定位必须先”自己”“主动”要求用户授权
在iOS8中调用requestAlwaysAuthorization和requestWhenInUseAuthorization要主动请求授权, 而且 必须再info.plist文件中配置一项属性才能弹出授权窗口
NSLocationWhenInUseDescription,允许在前台获取GPS的描述(弹框时的描述就是key后面的文字,下同)
NSLocationAlwaysUsageDescription,允许在后台获取GPS的描述
并且监听:
在有授权的时候才开始进行定位。所以要根据系统版本的不同进行判定,iOS8之前可以直接进行定位,在iOS8以后要按照上述步骤进行
设置定位精度和多远进行一次定位:
iOS7授权框弹出时的描述可以配置:
1>iOS7只要开始定位, 系统就会自动要求用户对你的应用程序授权. 但是从iOS8开始, 想要定位必须先”自己”“主动”要求用户授权
在iOS8中调用requestAlwaysAuthorization和requestWhenInUseAuthorization要主动请求授权, 而且 必须再info.plist文件中配置一项属性才能弹出授权窗口
NSLocationWhenInUseDescription,允许在前台获取GPS的描述(弹框时的描述就是key后面的文字,下同)
NSLocationAlwaysUsageDescription,允许在后台获取GPS的描述
if([[UIDevice currentDevice].systemVersion doubleValue] >= 8.0){ // 主动要求用户对我们的程序授权, 授权状态改变就会通知代理 [self.mgr requestAlwaysAuthorization]; // 请求前台和后台定位权限 //[self.mgr requestWhenInUseAuthorization];// 请求前台定位权限 }else{ // 3.开始监听(开始获取位置) [self.mgr startUpdatingLocation]; }
并且监听:
- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status{ if (status == kCLAuthorizationStatusAuthorizedAlways || status == kCLAuthorizationStatusAuthorizedWhenInUse){ NSLog(@"授权成功"); // 开始定位 [self.mgr startUpdatingLocation]; } }
在有授权的时候才开始进行定位。所以要根据系统版本的不同进行判定,iOS8之前可以直接进行定位,在iOS8以后要按照上述步骤进行
设置定位精度和多远进行一次定位:
self.mgr.desiredAccuracy = kCLLocationAccuracyNearestTenMeters; self.mgr.distanceFilter = 500;
iOS7授权框弹出时的描述可以配置:
Privacy - Location Usage Description,后面加描述
相关文章推荐
- C语言逗号表达式 (100,200,500)(a,b,c)
- 建行E商贸通支付开发系列之六(生产环境与总结)
- Ajax总结
- C++内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区
- UIImageView——IOS显示图片的利器
- linux-sed命令详解!
- iOS字体设置
- emmet缩写大全
- emmet中的用法
- 解决Cannot change version of project facet Dynamic web module to 2.5
- 打印机如何取消打印任务
- 【总结】10月训练赛第7场
- 关于window.onload加载的多种解决方案
- 通过UIImageRenderingMode改变工程图片颜色
- 推荐Asp.net WebApi入门教程
- iOS 线程锁同步机制
- 仿美团下拉
- XListView 的使用及源码分析
- Android studio Installation error: INSTALL_FAILED_OLDER_SDK
- How to update the version of pgfplots in MiKTeX