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
  • 相关阅读:
    DBA_Oracle Erp重启Database/Application/Concurrent/Apache(案例)
    DBA_Oracle Erp R12安装虚拟机镜像IP修正(案例)
    RMAN_学习实验2_RMAN Duplicate复制数据库过程(案例)
    RMAN_学习实验1_RMAN备份标准过程(案例)
    PLSQL_基础系列12_替换函数用法REPLACE / TRANSLATE / REGEXP_REPLACE
    PLSQL_基础系列11_递归和层次查询CONNECT BY(案例)
    DBA_Oracle Sort排序处理空间耗用(概念)
    DBA_Oracle性能优化的基本方法概述(方法论)
    DBA_Oracle海量数据处理分析(方法论)
    PLSQL_基础系列10_子查询WITH AS(案例)
  • 原文地址:https://www.cnblogs.com/fantasy3588/p/4680429.html
Copyright © 2011-2022 走看看