iOSCore Location地理定位的简单实用
2016-01-15 22:18
344 查看
#import "ViewController.h"
#import <CoreLocation/CoreLocation.h>
@interface ViewController ()<CLLocationManagerDelegate>
@property (nonatomic, strong) CLLocationManager *manager;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// 1 首先导入框架
// 2 导入头文件
// 3 创建位置管理器
CLLocationManager *manager = [[CLLocationManager alloc]init];
self.manager = manager;
// 4 进行授权
[manager requestAlwaysAuthorization]; // 一直授权
// [manager requestWhenInUseAuthorization]; // 使用的时候进行授权
// 5 开始定位
[manager startUpdatingLocation]; // 开始定位
// ios9 以后, 有个后台定位
// manager.allowsBackgroundLocationUpdates = YES;
// 设置精准度
manager.desiredAccuracy = kCLLocationAccuracyBest;
// 设置精准位置, 100米范围
manager.distanceFilter = 100;
// 6 设置代理
manager.delegate = self;
// 计算两者之间的距离
[self comparedistace];
}
#pragma mark 代理方法
/**
* 完成定位回来到此方法
*
* @param manager 位置管理器
* @param locations 位置的一些信息
*/
// 不断的被调用, 如果只想得到一次, 就停止更新
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations{
// 获取一个位置信息
CLLocation *location = locations.lastObject;
NSLog(@"%f--%f",location.coordinate.latitude, location.coordinate.longitude);
// [self.manager stopUpdatingLocation];
}
// 计算两者之间距离
- (void)comparedistace{
// 首先先创建两个location
CLLocation *location1 = [[CLLocation alloc]initWithLatitude:41.0 longitude:116.1];
CLLocation *location2 = [[CLLocation alloc]initWithLatitude:42.0 longitude:116.2];
double distance = [location1 distanceFromLocation:location2];
NSLog(@"%f",distance);
}
#import <CoreLocation/CoreLocation.h>
@interface ViewController ()<CLLocationManagerDelegate>
@property (nonatomic, strong) CLLocationManager *manager;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// 1 首先导入框架
// 2 导入头文件
// 3 创建位置管理器
CLLocationManager *manager = [[CLLocationManager alloc]init];
self.manager = manager;
// 4 进行授权
[manager requestAlwaysAuthorization]; // 一直授权
// [manager requestWhenInUseAuthorization]; // 使用的时候进行授权
// 5 开始定位
[manager startUpdatingLocation]; // 开始定位
// ios9 以后, 有个后台定位
// manager.allowsBackgroundLocationUpdates = YES;
// 设置精准度
manager.desiredAccuracy = kCLLocationAccuracyBest;
// 设置精准位置, 100米范围
manager.distanceFilter = 100;
// 6 设置代理
manager.delegate = self;
// 计算两者之间的距离
[self comparedistace];
}
#pragma mark 代理方法
/**
* 完成定位回来到此方法
*
* @param manager 位置管理器
* @param locations 位置的一些信息
*/
// 不断的被调用, 如果只想得到一次, 就停止更新
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations{
// 获取一个位置信息
CLLocation *location = locations.lastObject;
NSLog(@"%f--%f",location.coordinate.latitude, location.coordinate.longitude);
// [self.manager stopUpdatingLocation];
}
// 计算两者之间距离
- (void)comparedistace{
// 首先先创建两个location
CLLocation *location1 = [[CLLocation alloc]initWithLatitude:41.0 longitude:116.1];
CLLocation *location2 = [[CLLocation alloc]initWithLatitude:42.0 longitude:116.2];
double distance = [location1 distanceFromLocation:location2];
NSLog(@"%f",distance);
}
相关文章推荐
- android Google Map获取地理位置信息的方法
- 腾讯与新浪的通过IP地址获取当前地理位置(省份)的接口
- php利用新浪接口查询ip获取地理位置示例
- c#实现根据网络IP显示地理位置功能示例
- js+html5获取用户地理位置信息并在Google地图上显示的方法
- Android编程获取地理位置的经度和纬度实例
- 使用JS获取当前地理位置方法汇总
- PHP中实现获取IP和地理位置类分享
- PHP实现搜索地理位置及计算两点地理位置间距离的实例
- java实现根据ip地址获取地理位置的代码分享
- Android使用criteria选择合适的地理位置服务实现方法
- python使用在线API查询IP对应的地理位置信息实例
- PHP中实现获取IP和地理位置类分享
- UIWebview 地理位置定位问题
- 通过php获取ip所在地理位置
- 根据IP定位用户所在城市信息 (js)
- 地理位置输入提示(不显示地图)
- 【LBS】移动互联网基于LBS地理位置应用开发必备
- 通过www.ip138.com获取本机外网ip以及所在地理位置
- 移动端报表如何获取当前地理位置