iOS8及以上版本地图定位
2016-04-11 本文已影响0人
rgshio
在IOS8中定位功能新增了两个方法:
①- (void)requestWhenInUseAuthorization; //使用应用的时候定位
②- (void)requestAlwaysAuthorization; //未使用应用的时候也可以定位
这两个新增的方法导致在iOS8以下版本运行会出现定位功能无法正常使用的问题!
正确的在iOS8及以上版本定位的方法:
1.在Info.plist表里面添加两个key(自定义提示用户授权使用地理定位功能时的提示语)
①NSLocationWhenInUseUsageDescription(该key对应的value如下图,如果不想自定义,可以为空)

②NSLocationAlwaysUsageDescription(同上)

2.在代码中启动跟踪定位(startUpdatingLocation)前,调用以下方法:
①if ([locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]) {
[locationManager requestWhenInUseAuthorization];
}
②if ([locationManager respondsToSelector:@selector(requestAlwaysAuthorization)]) {
[locationManager requestAlwaysAuthorization];
}