这是因为xcode升级造成的定位权限设置问题。
升级xcode6以后打开以前xcode5工程,程序不能定位。工程升级到xcode6编译时需要iOS8 要自己写授权,不然没权限定位。
解决方法:
首先在 info.plist里加入对应的缺省字段 ,值设置为YES(前台定位写上边字段,前后台定位写下边字段)
NSLocationWhenInUseUsageDescription //允许在前台获取GPS的描述
NSLocationAlwaysUsageDescription //允许在前、后台获取GPS的描述
后方附图
先上代码:
     
升级xcode6以后打开以前xcode5工程,程序不能定位。工程升级到xcode6编译时需要iOS8 要自己写授权,不然没权限定位。
解决方法:
首先在 info.plist里加入对应的缺省字段 ,值设置为YES(前台定位写上边字段,前后台定位写下边字段)
NSLocationWhenInUseUsageDescription //允许在前台获取GPS的描述
NSLocationAlwaysUsageDescription //允许在前、后台获取GPS的描述
后方附图
先上代码:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | #import "ViewController.h"#import <CoreLocation/CoreLocation.h>@interfaceViewController ()<CLLocationManagerDelegate>@property(nonatomic, strong) CLLocationManager *locationManager;@end@implementationViewController//    1. 懒加载初始化:- (CLLocationManager *)locationManager{    if(!_locationManager){        self.locationManager = [[CLLocationManager alloc] init];        self.locationManager.delegate = self;    }    return_locationManager;}- (void)viewDidLoad {    [superviewDidLoad];//    2. 调用请求:    if([[[UIDevice currentDevice] systemVersion] doubleValue] > 8.0)    {        //设置定位权限 仅ios8有意义        [self.locationManager requestWhenInUseAuthorization];// 前台定位                //  [locationManager requestAlwaysAuthorization];// 前后台同时定位    }    [self.locationManager startUpdatingLocation];}// 3.代理方法- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray*)locations{    NSLog(@"%ld",locations.count);}@end | 
图片:图.png 
![]()

    每天都有不一样的太阳
 
                    
                 
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号