- (void)viewDidLoad {
[super viewDidLoad];
// 2.成为CoreLocation管理者的代理监听获取到的位置
self.mgr.delegate = self;
// 注意:如果是iOS8, 想进行区域检测, 必须自己主动请求获取用户隐私的权限
//去info.plist文件设置权限 NSLocationAlwaysUsageDescription
if ([[UIDevice currentDevice].systemVersion doubleValue] >= 8.0 ) {
[self.mgr requestAlwaysAuthorization];
}
// 3.开始检测用户所在的区域
// 3.1创建区域
// CLRegion 有两个子类是专门用于指定区域的
// 一个可以指定蓝牙的范围/ 一个是可以指定圆形的范围
// 创建中心点
CLLocationCoordinate2D center = CLLocationCoordinate2DMake(精度, 纬度);
// c创建圆形区域, 指定区域中心点的经纬度, 以及半径
CLCircularRegion *circular = [[CLCircularRegion alloc] initWithCenter:center radius:500 identifier:@”软件园”];
[self.mgr startMonitoringForRegion:circular];
}
//pragma mark - CLLocationManagerDelegate
// 进入监听区域时调用 - (void)locationManager:(CLLocationManager )manager didEnterRegion:(CLRegion )region{
NSLog(@”进入监听区域时调用”);
}
// 离开监听区域时调用 - (void)locationManager:(CLLocationManager )manager didExitRegion:(CLRegion )region{
NSLog(@”离开监听区域时调用”);
}
//pragma mark - 懒加载
- (CLLocationManager *)mgr{
if (!_mgr) {
_mgr = [[CLLocationManager alloc] init];
}
return _mgr;
}