美文网首页
iOS 8.0以后系统自带的地图定位

iOS 8.0以后系统自带的地图定位

作者: 管饱饱 | 来源:发表于2017-01-04 11:03 被阅读76次

    1.导入CoreLocation.framework

    2.然后再引入头文件#import CoreLocation/CoreLocation.h(简书会自动处理<>这个符号,所以不要直接复制)

    3.在plist文件配置如下两项

    (1)NSLocationAlwaysUsageDescription(始终允许访问地理位置)

    (2)NSLocationWhenInUseUsageDescription(当app在使用时使用地理位置)

    4.申明一个:CLLocationManager *mLocation;

    5.添加代理 CLLocationManagerDelegate

    6.在viewdidload中加入如下代码

    if ([CLLocationManager locationServicesEnabled]) {

    mLocation = [[CLLocationManager alloc]init];

    mLocation.delegate = self;

    // 最小距离

    mLocation.distanceFilter=kCLDistanceFilterNone;

    //设置定位的精准度,一般精准度越高,越耗电(这里设置为精准度最高的,适用于导航应用)

    mLocation.desiredAccuracy=kCLLocationAccuracyBestForNavigation;

    [mLocation requestAlwaysAuthorization];

    //开始定位用户的位置

    [mLocation startUpdatingLocation];

    }else{

    //[Utility toast:self.view message:@"定位服务不可用,请设置"];

    }

    else处理用户没有打开定位的操作

    7.实现代理

    - (void)locationManager:(CLLocationManager *)manager

    didUpdateToLocation:(CLLocation *)newLocation

    fromLocation:(CLLocation *)oldLocation{

    mLongitude = [NSString stringWithFormat:@"%f",newLocation.coordinate.longitude];

    mLatitude =[NSString stringWithFormat:@"%f",newLocation.coordinate.latitude];

    //如果你不是使用地图,那么定位一次以后就可以用下面这句话关了定位

    [mLocation stopUpdatingLocation];

    }

    如上,就可以使用系统自带的定位功能了

    相关文章

      网友评论

          本文标题:iOS 8.0以后系统自带的地图定位

          本文链接:https://www.haomeiwen.com/subject/rrsovttx.html