iOS 检测定位服务
来源:互联网 发布:英雄杀2017探宝数据 编辑:程序博客网 时间:2024/06/05 16:11
Core Location是开发定位服务应用程序的框架。我们要在Xcode中添加“CoreLocation.framework”存在的框架。主要使用的类是:CLLocationManager,通过CLLocationManager实现定位服务。
注意:
1、添加“CoreLocation.framework”存在的框架
2、导入头文件 #import <CoreLocation/CoreLocation.h>
//检测定位开关有没有打开if (![CLLocationManager locationServicesEnabled]){ [[[UIAlertView alloc] initWithTitle:@"提示:" message:@"定位服务已被关闭,请前往设置页面打开!" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"确定", nil] show];}
2、设置协议 CLLocationManagerDelegate
3、创建实例
CLLocationManager *locationManager;locationManager = [[CLLocationManager alloc] init];locationManager.delegate = self;locationManager.desiredAccuracy = kCLLocationAccuracyBest;locationManager.distanceFilter = kCLDistanceFilterNone;[locationManager startUpdatingLocation];
4、使用回调
//代理回调 检测是何种原因导致定位失败- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error{ NSString *errorString; [manager stopUpdatingLocation]; NSLog(@"Error: %@",[error localizedDescription]); switch ([error code]) { case kCLErrorDenied: { errorString = @"Access to Location Services denied by user"; [[[UIAlertView alloc] initWithTitle:@"提示:" message:@"请打开该app的位置服务!" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"确定", nil] show]; } break; case kCLErrorLocationUnknown: { errorString = @"Location data unavailable"; [[[UIAlertView alloc] initWithTitle:@"提示:" message:@"位置服务不可用!" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"确定", nil] show]; } break; default: { errorString = @"An unknown error has occurred"; [[[UIAlertView alloc] initWithTitle:@"提示:" message:@"定位发生错误!" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"确定", nil] show]; } break; }}//实现位置的更新- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{ NSString *latitudeStr = [NSString stringWithFormat:@"%3.5f",newLocation.coordinate.latitude]; NSString *longitudeStr = [NSString stringWithFormat:@"%3.5f",newLocation.coordinate.longitude]; [locationManager stopUpdatingLocation]; NSLog(@"location ok");}
0 0
- IOS检测定位服务
- iOS检测定位服务
- iOS 检测定位服务
- iOS设备定位检测
- ios 定位服务
- IOS 定位服务
- iOS定位服务
- iOS 定位服务
- ios定位服务详解
- iOS 定位服务
- iOS-定位服务
- iOS 定位服务
- iOS定位服务CoreLocation
- iOS 定位服务
- iOS 定位服务
- iOS - 定位服务
- iOS 定位服务
- iOS定位服务 CoreLocation
- Linux负载均衡软件LVS之一(概念篇)
- 30自制操作系统第三天
- Linux负载均衡软件LVS之二(安装篇)
- OO设计原则
- Linux负载均衡软件LVS之三(配置篇)
- iOS 检测定位服务
- Linux负载均衡软件LVS之四(测试篇-完)
- 移动共享开发(六)授权API接口和分享API接口
- ASIHTTPRequest异步请求
- UIKit框架-高级控件:2.UIScrollView的单图分页设置
- 打造高质效的技术团队 —— 酝酿篇
- RelativeLayout(相对布局)
- fragment生命周期
- iOS CocoaChina开发者小测验