//导入库

#import <CoreLocation/CoreLocation.h>

//注意:

//需要在 info.plist 中导入前两个字段

//NSLocationAlwaysUsageDescription

//NSLocationWhenInUseUsageDescription

@interface ViewController ()<CLLocationManagerDelegate>

@property (nonatomic,strong)CLLocationManager *locationManager;

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

//初始化locationManger管理器对象

CLLocationManager *locationManager=[[CLLocationManager alloc]init];

self.locationManager=locationManager;

//判断当前设备定位服务是否打开

if (![CLLocationManager locationServicesEnabled]) {

NSLog(@"设备尚未打开定位服务");

}

//判断当前设备版本大于iOS8以后的话执行里面的方法

if ([UIDevice currentDevice].systemVersion.floatValue >=8.0) {

//持续授权

[locationManager requestAlwaysAuthorization];

//当用户使用的时候授权

[locationManager requestWhenInUseAuthorization];

}

//或者使用这种方式,判断是否存在这个方法,如果存在就执行,没有的话就忽略

//if([locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]){

//   [locationManager requestWhenInUseAuthorization];

//}

//设置代理

locationManager.delegate=self;

//设置定位的精度

locationManager.desiredAccuracy=kCLLocationAccuracyBest;

//设置定位的频率,这里我们设置精度为10,也就是10米定位一次

CLLocationDistance distance=10;

//给精度赋值

locationManager.distanceFilter=distance;

//开始启动定位

[locationManager startUpdatingLocation];

}

//当位置发生改变的时候调用(上面我们设置的是10米,也就是当位置发生>10米的时候该代理方法就会调用)

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

//取出第一个位置

CLLocation *location=[locations firstObject];

NSLog(@"%@",location.timestamp);

//位置坐标

CLLocationCoordinate2D coordinate=location.coordinate;

NSLog(@"您的当前位置:经度:%f,纬度:%f,海拔:%f,航向:%f,速度:%f",coordinate.longitude,coordinate.latitude,location.altitude,location.course,location.speed);

//如果不需要实时定位,使用完即使关闭定位服务

//[_locationManager stopUpdatingLocation];

}

- (void)didReceiveMemoryWarning {

[super didReceiveMemoryWarning];

// Dispose of any resources that can be recreated.

}

@end

获取经纬度 CLLocation的更多相关文章

  1. iOS之获取经纬度并通过反向地理编码获取详细地址

    _locationManager = [[CLLocationManager alloc] init]; //期望的经度 _locationManager.desiredAccuracy = kCLL ...

  2. 转载]IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本 )

    原文地址:IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本作者:佐佐木小次郎 因为最近项目上要用有关LBS的功能.于是我便做一下预研. 一般说来LBS功能一般分为两块:一块是地理 ...

  3. iOS获取经纬度

    在ios8.0以上获取经纬度时,需要申请授权,否则不能定位   第一步: 在 HomeViewController.m @interfaceHomeViewController ()<CLLoc ...

  4. html5获取经纬度,百度api获取街区名,并使用JS保存进cookie

    引用js<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak= ...

  5. 利用百度地图API,获取经纬度坐标

    利用百度地图API,获取经纬度坐标 代码很简单,但在网上没找到现成的获取地图经纬度的页面. 就是想,给当前页面传递一个经纬度,自动定位到此经纬度.然后可以重新选择,选择完返回经纬度. 效果如下: 源代 ...

  6. windows phone 7 定位(获取经纬度),然后找到经纬度所在的位置(城市信息)

    原文:windows phone 7 定位(获取经纬度),然后找到经纬度所在的位置(城市信息) 前几天做项目用到, 代码贴给大家. /// <summary> /// 获取当前位置的经纬度 ...

  7. php根据IP获取经纬度信息--百度地图篇

    一.前言 之前一篇写过 php根据IP获取IP所在城市  ,但是还想再精确一点,获取这个IP所在的经纬度信息,该怎么办呢? 百度地图为我提供了一种解决方案(当然还有其他的解决方案). 先总的来数一下, ...

  8. [WPF] 浏览百度地图并获取经纬度地址信息

    项目中需要利用登记的区域和地址在百度地图上定位,并获取该地址的经纬度. 本次功能对我来说主要难点如下:1.百度地图API的基本使用方法,请首选使用百度地图的JavaScript大众版(PS:之前使用W ...

  9. 百度地图API地点搜索-获取经纬度

    分享一下地图上的地点搜索和鼠标点击获取地点经纬度,这些都是地图比较基本和实用的代码,其中还包括了根据用户IP进行地图的显示.改变地图上的鼠标样式.启用滚轮缩放等,算是半入门吧,其他的一些可以自己参考百 ...

随机推荐

  1. Drawerlayou与ScrollView的介绍

    Drawerlayout侧滑 Drawerlayout是Support Library包中实现了侧滑菜单效果的控件. 滚动条(ScrollView) ScrollView和HorizontalScro ...

  2. 关于异常“The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine”的处理

    我们在利用SqlBlukcopy技术倒2010 或者2007格式的文件到SqlServer 数据库的时候,会发生如下错误: 原因如下: 1.在用SQL SERVER 2005访问.xlsx文件(off ...

  3. HDU1175(dfs)

    连连看 Time Limit:10000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u   Description ...

  4. [html5] 学习笔记-html5增强的页面元素

    在 HTML5 中,不仅增加了很多表单中的元素,同时也增加和改良了可以应用在整个页面中的元素.重点包含 figure.figcaption.details.summary.mark.progress. ...

  5. 蓝桥网试题 java 基础练习 杨辉三角形

    ----------------------------------------------------------- ---------------------------------------- ...

  6. 蓝桥网试题 java 基础练习 回文数

    --------------------------------------------------------------------- 没必要枚举出所有四位数 四位数里是回文的数都有一个特性,是什 ...

  7. requireJS的初步掌握(二)

    前面我们讲述了requireJS的一些认知和优点,==>http://www.cnblogs.com/wymbk/p/6366113.html 这章我们主要描述的是requireJS的一些常用的 ...

  8. C#文本框允许使用ctrl+A

    C#文本框中默认是不允许使用全选的.可以通过以下事件完成: private void textBox1_KeyDown(object sender, KeyEventArgs e) { if (e.C ...

  9. ASP.NET Core中的缓存[1]:如何在一个ASP.NET Core应用中使用缓存

    .NET Core针对缓存提供了很好的支持 ,我们不仅可以选择将数据缓存在应用进程自身的内存中,还可以采用分布式的形式将缓存数据存储在一个“中心数据库”中.对于分布式缓存,.NET Core提供了针对 ...

  10. oracle 游标的使用

    额,一直提起游标就头疼,总感觉是很高大上的东西,望而却步... 今天要做的东西涉及到了实时更新数据,要用到JOB 存储过程  游标 通过在网上查资料,请教同事,也开始继续深入oracle,,,,小菜啊 ...