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
  • 相关阅读:
    绝对定位position: absolute;
    加号选择器(ul>li + li)
    position: absolute;绝对定位水平居中问题
    nth-child 和 nth-of-type 的区别
    Scrapy Shell 待续。。。
    TypeError: write() argument must be str, not bytes
    ModuleNotFoundError :No module named 'win32api'
    scrapy 简介
    3月27下午(补交)
    软件工程作业二:需求分析
  • 原文地址:https://www.cnblogs.com/fantasy3588/p/4680429.html
Copyright © 2011-2022 走看看