iOS-定位服务

过年后第一次来上班,那么我们来说说iOS上的定位服务首先说定位共分三种方法,第一利用WiFi,第二是移动蜂窝网络,第三是利用GPS然后是iPod touch上是不具备GPS模块的,所以不能利用GPS进行定位最后想说的是,因为老板不相信iPhone可以利用GPS,所以下面的例子可以在关闭WiFi,并且拔出sim卡的情况下,进行测试的,亲测有效开始第一步,导入框架 CoreLocation第二步,引入框架并设置相应的协议,设置好变量#import#import#import@interface MeViewController : UIViewController{

UIButton *button;

//位置相关

CLLocationManager *location;

}

@end

第三步,初始化 location

//定位服务

location = [[CLLocationManager alloc] init]; //初始化

location.delegate = self; //设置代理

location.desiredAccuracy = kCLLocationAccuracyBest; //设置精度

location.distanceFilter = 1000.0f; //表示至少移动1000米才通知委托更新

[location startUpdatingLocation]; //开始定位服务

第四步,实现委托代码,获取位置后弹出信息

//定位信息

-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations

{

CLLocation *currLocation = [locations lastObject];

float lat = currLocation.coordinate.latitude;  //正值代表北纬

float lon = currLocation.coordinate.longitude; //正值代表东经

if (lat != 0 && lon != 0)

{

NSString *string = [NSString stringWithFormat:@"您的当前位置为%f,%f",lat,lon];

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"位置信息" message:string delegate:nil cancelButtonTitle:@"取消" otherButtonTitles:@"确认", nil];

[alert show];

}

}

第五步,出于责任心,在离开该页面之后要关闭定位服务

-(void)viewWillDisappear:(BOOL)animated

{

[super viewWillDisappear:animated];

[location stopUpdatingLocation];

}

我的网址www.bourbonz.cn

你可能感兴趣的:(iOS-定位服务)