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. MongoDB -- 更新

    $pull: db.collection.update( <query>, { $pull: { <arrayField>: <query2> } } ) $pul ...

  2. 第m个全排列

    #include<stdio.h> #include<string.h> int flag,n,m; ],sum,vis[]; void dfs(int k) { ) retu ...

  3. 那些年我们装过的数据库---盘点sqlserver2008安装时遇到的各种的问题(持续更新中)

    给自己安过sqlServer2008,也给好多同学安过sqlServer2008,期间遇到了好多不同的另人心烦的问题,在这里整理一下,(涉及到的部分方法是在网上找的,有些也没试过,仅仅是在这里整理一下 ...

  4. opencv 训练自己的分类器汇总

    原地址:http://www.cnblogs.com/zengqs/archive/2009/02/12/1389208.html OpenCV训练分类器 OpenCV训练分类器 一.简介 目标检测方 ...

  5. 如果在线显示php源代码

    原文:如果在线显示php源代码 通过php提供的函数highlight_file和highlight_string实现

  6. 字符串string和内存流MemoryStream及比特数组byte[]互转

    原文:字符串string和内存流MemoryStream及比特数组byte[]互转   字符串string和内存流MemoryStream及比特数组byte[]互转比较 定义string变量为str, ...

  7. R语言与数据分析之九:时间内序列--HoltWinters指数平滑法

    今天继续就指数平滑法中最复杂的一种时间序列:有增长或者减少趋势而且存在季节性波动的时间序列的预測算法即Holt-Winters和大家分享.这样的序列能够被分解为水平趋势部分.季节波动部分,因此这两个因 ...

  8. coreos docker 尝新奇

    官方介绍了好几种安装方法,我试了下还是认为vmware的比較靠谱. 官方的下载地址也不是非常稳定,我分享了一个在百度云上面,http://pan.baidu.com/s/1hqgkCmS 解压后,直接 ...

  9. Libevent使用样例,从简单到复杂

            转载请注明出处:http://blog.csdn.net/luotuo44/article/details/39670221 本文从简单到复杂.展示怎样使用libevent.网上的很多 ...

  10. 通过Camera进行拍照

    Android通过Camera来控制拍照,使用Camera比较简单,按步骤进行即可: 下面用一个示例来演示: Activity: package com.home.activity; import j ...