IOS中的core location提供了定位功能,能定位装置的当前坐标,同一时候能得到装置移动信息。由于对定位装置的轮询是非常耗电的,所以最好仅仅在非常必要的前提下启动。

当中,最重要的类是CLLocationManager,定位管理。

其定位有3种方式:

1,GPS,最精确的定位方式,貌似iphone1是不支持的。

2,蜂窝基站三角定位,这样的定位在信号基站比較秘籍的城市比較准确。

3,Wifi,这样的方式貌似是通过网络运营商的数据库得到的数据,在3种定位种最不精确

使用方式:

1,引入CoreLocation的包,一般的默认模板里是没有的,所以须要手动导入。

2,通过启动CLLocationManager来启动定位服务,由于定位信息是须要轮询的,并且对于程序来说是须要一定时间才会得到的,所以翠玉lcationManager的操作大多都给托付来完毕。

载入locationManager的代码:

    CLLocationManager *locationManager = [[CLLocationManager alloc] init];//创建位置管理器
locationManager.delegate=self;
locationManager.desiredAccuracy=kCLLocationAccuracyBest;
locationManager.distanceFilter=1000.0f;
//启动位置更新
[locationManager startUpdatingLocation];

desiredAccuracy为设置定位的精度,能够设为最优,装置会自己主动用最精确的方式去定位。

distanceFilter是距离过滤器,为了降低对定位装置的轮询次数,位置的改变不会每次都去通知托付,而是在移动了足够的距离时才通知托付程序,它的单位是米,这里设置为至少移动1000再通知托付处理更新。

startUpdatingLocation就是启动定位管理了,一般来说,在不须要更新定位时最好关闭它,用stopUpdatingLocation,能够节省电量。

对于托付CLLocationManagerDelegate,最经常使用的方法是:

- (void)locationManager:(CLLocationManager *)manager   

    didUpdateToLocation:(CLLocation *)newLocation   

           fromLocation:(CLLocation *)oldLocation;

这种方法即定位改变时托付会运行的方法。

能够得到新位置,旧位置,CLLocation里面有经度纬度的坐标值,

同一时候CLLocation还有个属性horizontalAccuracy,用来得到水平上的准确度,它的大小就是定位精度的半径,单位为米。

假设值为-1,则说明此定位不可信。

另外托付另一个经常用法是

- (void)locationManager:(CLLocationManager *)manager   

       didFailWithError:(NSError *)error ;

当定位出现错误时就会调用这种方法。

关于Core Location-ios定位的更多相关文章

  1. Core Location实现定位

    2013/4/22记录: 注意:如非必要,不应该多次轮询位置信息i 使用时,可根据需要制定精度,通过仔细制定所需的绝对最低精度级别,可以纺织不必要的电池消耗.    导入:CoreLocation.f ...

  2. iOS 苹果自带地图定位Core Location

    Core Location是iOS SDK中一个提供设备位置的框架.可以使用三种技术来获取位置:GPS.蜂窝或WiFi.在这些技术中,GPS最为精准,如果有GPS硬件,Core Location将优先 ...

  3. IOS开发之Core Location

    IOS 支持三种检测当前位置的方式:手机基站.Wi-Fi.和GPS,其中GPS是经度最高的,同时也是最耗费手机电量的.一般情况下在室内是无法通过GPS获 取位置信息的,通过Wi-Fi获取位置的原理是通 ...

  4. Core Location :⽤用于地理定位

    Core Location :⽤用于地理定位 在移动互联⽹网时代,移动app能解决⽤用户的很多⽣生活琐事,⽐比如 导航:去任意陌⽣生的地⽅方 周边:找餐馆.找酒店.找银⾏行.找电影院 在上述应⽤用中, ...

  5. iPhone的定位技术与Core Location框架

    来源:http://www.cnblogs.com/lovecode/archive/2011/12/24/2300579.html iPhone定位来源通常有:1. GPS定位 2. WiFi定位 ...

  6. iOS开发-Core Location和Map Kit

    一.Core Location确定物理位置 利用以下3种技术: 1.GPS(最精确的) 2.蜂窝基站ID定位(cell ID Location) 3.WPS(Wi-Fi Positioning Ser ...

  7. ios中Core Location跟Map Kit的基本使用

    地图类开发应用中,离不开地理位置跟MKMapView的使用,下面就记录下自己在使用这两个东西中学到的. 不过并不是所有苹果的设备都支持地理位置,我们在使用前应该做个判断,代码如下: BOOL loca ...

  8. ios 定位

    ios 定位新功能----在程序中实现定位功能 Core Location是iOS SDK中一个提供设备位置的框架.可以使用三种技术来获取位置:GPS.蜂窝或WiFi.在这些技术中,GPS最为精准,如 ...

  9. iOS定位服务编程详解

    现在的移动设备很多都提供定位服务,使用iOS系统的iPhone.iPod Touch和iPad都可以提供位置服务,iOS设备能提供3种不同途径进行定位:Wifi, 蜂窝式移动电话基站, GPS卫星 i ...

随机推荐

  1. Android RingtoneManager铃声管理

    本篇介绍一下跳转到系统铃声选择界面,android中的铃声通过RingtoneManager管理,RingtoneManager管理来电铃声(TYPE_RINGTONE).提示音(TYPE_NOTIF ...

  2. Oracle heap 表的主键 dump 分析

    1. 创建heap 表: create table t1 (id char(10) primary key,a1 char(10),a2 char(10),a3 char(10)); SQL> ...

  3. pptv web前端面试题

    今天上午一考完试,就一直等待pptv的电话,结果下午就收到了pptv的通知(pptv的效率还是很不错的,之前面试官和我说在一到两周之内给回复,结果过了7天就给回复了,赞一个)因为我面试的是web前端( ...

  4. POJ 1562 Oil Deposits

    转载请注明出处:http://blog.csdn.net/a1dark 大规模的图论切题之旅正式开始了.由于今天停了一天的电.所以晚上才开始切题.直到昨晚才把图论大概看了一遍.虽然网络流部分还是不怎么 ...

  5. html浏览器兼容性的 JavaScript语法

    1.      在FireFox中能够使用与HTML节点对象ID属性值同样的JS变量名称.可是IE中不行. 解决的方法:在命名上区分HTML节点对象ID属性值和JS变量 2.      IE不支持JS ...

  6. [Android学习笔记]Activity

    每一个activity都表示一个屏幕,程序把activity呈现给用户,而在activity上实际看到的UI控件,都是View. 故把activity简单理解为view的容器. activity的状态 ...

  7. jquery中实现全选按钮

    <html>   <head>   <script type='text/javascript' src='js/jquery-1.5.1.js'></scr ...

  8. hdu 1086(判断线段相交)

    传送门:You can Solve a Geometry Problem too 题意:给n条线段,判断相交的点数. 分析:判断线段相交模板题,快速排斥实验原理就是每条线段代表的向量和该线段的一个端点 ...

  9. firefox同步数据时无响应问题

    之前设置了firefox的数据同步,可以在不同电脑上,同步自己的书签等信息,感觉很方便实用,最近在点工具立即同步时,不报错,书签也没有同步,没有任何响应: 后来查了许多网上资料,都不见效,无意间看到 ...

  10. 每日一小练——高速Fibonacci数算法

    上得厅堂,下得厨房,写得代码,翻得围墙,欢迎来到睿不可挡的每日一小练! 题目:高速Fibonacci数算法 内容:先说说Fibonacci数列,它的定义是数列:f1,f2....fn有例如以下规律: ...