Xcode6编译IOS8无法定位的问题解决

因为在IOS8 的定位里新增了两个方法:

- (void)requestWhenInUseAuthorization __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_8_0);
- (void)requestAlwaysAuthorization __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_8_0);

如果需要仅在前台定位,你在调用startUpdatingLocation  前需要调用requestWhenInUseAuthorization 
如果需要在前后台定位,你在调用startUpdatingLocation  前需要调用requestAlwaysAuthorization 
同时在plist文件中添加NSLocationWhenInUseUsageDescription或NSLocationAlwaysUsageDescription字段

这两个字段的值应该设置为YES

代码参考入下:
-(void) initLocation {
    self.locationManager=[[CLLocationManager alloc] init];
    self.locationManager.delegate=self;
    self.locationManager.desiredAccuracy=kCLLocationAccuracyNearestTenMeters;
    if(IsIOS8Later){
        [self.locationManager requestAlwaysAuthorization];
    }
    [self.locationManager startUpdatingLocation];
}

本文出自 “ios开发庄园” 博客,请务必保留此出处http://macho.blog.51cto.com/8652974/1557376

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。