zoukankan      html  css  js  c++  java
  • iOS 8 定位

    1.首先导入CoreLocation框架 设置代理 

    CLLocationManagerDelegate

    2.

    - (void)initLocationManager

    {

        BOOL isEnable = [CLLocationManager locationServicesEnabled];

        

        CGFloat verson = [[UIDevice currentDevice].systemVersion doubleValue];//float

        

        if(isEnable) {

            if(!_loactionManager){

                _loactionManager = [[CLLocationManager alloc] init];

                [_loactionManager setDelegate:self];

                _loactionManager.desiredAccuracy = kCLLocationAccuracyBest;

                _loactionManager.distanceFilter = 20.0;//每隔10米定位一次

                

                if(verson > 8.0f){

                    [_loactionManager requestAlwaysAuthorization];

                }

                [_loactionManager startUpdatingLocation];

            }

        }

        else {

            

            Alert(@"温馨提示", @"当前设备定位功能未开启!,建议您到手机系统的[设置]->[隐私]->[定位服务]中打开定位服务,并允许“XXXX社区”使用定位服务" );

            return;

        }

    }

    3.要在pist文件中添加两个key值

    NSLocationAlwaysUsageDescription   NSLocationWhenInUseUsageDescription 这两个key值添加在这个目录下 Application requires iPhone environment

    4.设置代理方法

    #pragma mark 代理方法

    - (void)locationManager:(CLLocationManager *)manager

         didUpdateLocations:(NSArray *)locations

    {

        CLLocation *currentLocation = [locations lastObject];

        MJLog(@"currentLocation == %@",currentLocation);

             // 创建位置

             CLGeocoder *revGeo = [[CLGeocoder alloc] init];

            [revGeo reverseGeocodeLocation:currentLocation completionHandler:^(NSArray *placemarks, NSError *error) {

             

            // 地理位置反编

             if (!error && [placemarks count] > 0) {

             NSDictionary *dict = [[placemarks objectAtIndex:0] addressDictionary];

             _currentPosition = [dict objectForKey:@"City"];

             MJLog(@"City address: %@",_currentPosition); }

             else  {

             Alert(@"温馨提示", @"获取位置失败");

             MJLog(@"ERROR: %@", error); }

             }];

        

    }

    - (void)locationManager:(CLLocationManager *)manager

           didFailWithError:(NSError *)error

    {

        MJLog(@"error :%@",[error localizedDescription]);

    }

    1
  • 相关阅读:
    Navicat远程连接服务器Mysql
    JSP与Servlet之间传值
    JSP获取绝对路径
    PIL的库学习
    科学计算与可视化
    预测球类比赛结果
    预测球类比赛结果
    汉诺塔问题
    有进度条圆周率计算
    turtle学习心得
  • 原文地址:https://www.cnblogs.com/fantasy3588/p/4680429.html
Copyright © 2011-2022 走看看