在Info.plist文件中添加如下配置:

//始终允许访问位置信息

(1)NSLocationAlwaysUsageDescription

//使用应用程序期间允许访问位置数据

(2)NSLocationWhenInUseUsageDescription

//创建一个管理者

- (CLLocationManager *)manager

{

if (!_manager) {

_manager = [[CLLocationManager alloc] init];

_manager.delegate = self;

   // 授权使应用在前台后台都能使用定位服务

[_manager requestAlwaysAuthorization];

//        _manager.desiredAccuracy = kCLLocationAccuracyBest;

//        _manager.distanceFilter = 10;

}

return _manager;

}

//然后调用startUpdatingLocation方法

[self.manager startUpdatingLocation];

实现CLLocationManagerDelegate的代理方法

(1)获取到位置数据,返回的是一个CLLocation的数组,一般使用其中的一个

- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations

{

CLLocation *location = [locations firstObject];

NSLog(@"%f %f",location.coordinate.longitude,location.coordinate.latitude);

}

(2)获取用户位置数据失败的回调方法,在此通知用户

- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error

{    if ([error code] == kCLErrorDenied)

{        //访问被拒绝

}

if ([error code] == kCLErrorLocationUnknown)

{        //无法获取位置信息

}

}

//反地理编码

//先懒加载CLGeocoder对象

- (CLGeocoder *)geoCoder

{

if (!_geoCoder) {

_geoCoder = [[CLGeocoder alloc] init];

}

return _geoCoder;

}

//完成定位后会调用

- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations

{

    self.location = [locations firstObject];
  //开始反地理编码
[self.geoCoder reverseGeocodeLocation:self.location completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) { CLPlacemark *placemark = [placemarks firstObject]; self.placemark = placemark; }]; }

iOS8之后CoreLocation定位的使用的更多相关文章

  1. iOS8中使用CoreLocation定位[转]

    本文转自:http://blog.devzeng.com/blog/ios8-corelocation-framework.html iOS8以前使用CoreLocation定位 1.首先定义一个全局 ...

  2. CoreLocation定位技术

    CoreLocation框架可用于定位设备当前经纬度,通过该框架,应用程序可通过附近的蜂窝基站,WIFI信号或者GPS等信息计算用户位置.      iOS定位支持的3种模式.      (1)GPS ...

  3. iOS - CoreLocation 定位

    前言 NS_CLASS_AVAILABLE(10_6, 2_0) @interface CLLocationManager : NSObject 1.CoreLocation 定位 配置 1.在 iO ...

  4. iOS8中的定位服务

    iOS8中的定位服务 My app that worked fine in iOS 7 doesn't work with the iOS 8 SDK. CLLocationManager doesn ...

  5. 地图定位IOS8之后的定位

    从ios8开始,苹果进一步加强了对用户隐私的保护. 当app想要访问用户的隐私信息时  系统不再自动弹出一个对话框让用户授权 解决方法: (1)调用ios8.0的API 主动请求用户授权 - (voi ...

  6. iOS开发拓展篇—CoreLocation定位服务

    iOS开发拓展篇—CoreLocation定位服务 一.简单说明 1.CLLocationManager CLLocationManager的常用操作和属性 开始用户定位- (void)startUp ...

  7. Ios8之后, 定位的delegate不能触发的问题

    if([CLLocationManager locationServicesEnabled]){ self.locationManage = [[[CLLocationManager alloc] i ...

  8. iOS-----使用CoreLocation定位

    使用CoreLocation定位 CoreLocation框架 (CoreLocation.framework)可用于定位设备当前经纬度, 通过该框架, 应用程序可通过附近的蜂窝基站\WIFI信号 或 ...

  9. ios8 - CoreLocation定位服务的变化

    在iOS8开发中,发现一个CoreLocation的使用问题,执行操作之后,不会调用到定位之后的delegate方法中. 根据文档,需要在使用CoreLocation前调用方法: [locationm ...

随机推荐

  1. UVa1453或La4728 凸包+枚举(或旋转卡壳)

    题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  2. Selenium webdriver firefox 路径设置问题

    问题: Cannot find firefox binary in PATH. Make sure firefox is installed. 原因:selenium找不到Firefox浏览器. 方法 ...

  3. A - Til the Cows Come Home

    裸的最短路,试一下刚看的spfa,虽然没有看代码,不过明白了大致的思想,先写一下试试吧,而且是个稀疏图,应该会很快吧. SPFA 算法采用图的存储结构是邻接表,方法是动态优化逼近法.算法中设立了一个先 ...

  4. poj2393

    题目大意: 奶酪工厂 奶牛买了一个奶酪工厂制作全世界有名的Yucky酸奶,在接下来的N周(1<=N<=10000),牛奶的价格和工作将会受到波动例如他将花费C_i (1 <= C_i ...

  5. [置顶] android 图片库的封装

    大家在做安卓应用的时候  经常要从网络中获取图片 都是通过URL去获取 可是如果本地有图片数据 从本地获取数据不更加快一些  自己在工作中遇到这个问题 所以采用了一个URL和本地图片的一个映射关系  ...

  6. java中的代理

    package cn.itcast.day3; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationHan ...

  7. 存储的一些基本概念(HBA,LUN)

    有些新手总是在各式各样的概念里绕来绕去,弄的不亦乐乎.所以我就把我的一些理解写了下来,供您参考.我说的不局限于任何一种具体产品和厂家,也可能有些说法和某些厂家的说法不一样,但是我觉得应该算的上是本原的 ...

  8. centos下的mysql安装

    卸载mysql yum remove mysql mysql-server mysql-libs compat-mysql51 rm -rf /var/lib/mysql rm /etc/my.cnf ...

  9. cocos2dx内存管理的一些看法

    今年年初进入一家游戏公司,正式开始游戏引擎的学习,之前的ios学习,对现在的游戏引擎学习还是有很大的帮助的,虽然使用c++,但却能时刻感受到ios框架对于cocos2dx的巨大影响. 由于之前一直使用 ...

  10. SQL中存储过程中使用事务,并且加入异常处理机制.

    --存储过程中使用事务,并且加入异常处理机制. -- ============================================= CREATE PROCEDURE [dbo].[UP_ ...