现在很多网站、APP应用等都引入了地图和定位功能,似乎地图功能不再是地图和导航应用的专利。的确,地图和定位功能引入到应用开发中,不但方便了我们的生活方式,也让我们的生活变得更加丰富多彩。那麽,iOS系统如何进行地图和定位开发呢?
一、定位服务
一般来说,iOS设备能提供3种不同的定位途径:WiFi定位、蜂窝式移动电话基站定位、GPS衞星定位。
3种定位途径的特点:
GPS衞星定位:定位准确、覆盖面广阔;但不能被遮挡,开启後比较费电。
蜂窝式移动电话基站定位:不仅误差比较大,而且还会耗费用户流量费。
WiFi定位:最经济实惠。
与Android不同,iOS系统在定位服务编程时,不可以指定采用哪种途径进行定位。这是由於iOS系统的API把底层这些细节屏蔽掉,开发人员和用户并不知道现在设备采用哪种方式进行定位。尽管如此,iOS系统会根据设备的情况和周围的环境,采用一种最佳的解决方法。
二、定位服务编程
1)精度越高的请求,获取位置信息的频率就会越高,设备也就会越耗电。
2)调用方法start Updating Location定位服务就会开启,它根据设定的条件,不断地请求回调新的位置信息。因此开启这个方法一定要慎重,要在最合适的时候开,在视图控制器的声明周期方法中view Will Appear:方法是最合适的。停止服务的方法是stop Updating Location,它是视图控制器的viewWillAppear:方法中调用的,代码如下:
1 -(void)viewWillDisappear:(BOOL)animated
2 {
3 [super viewWillDisappear:animated];
4 //停止定位
5 [_locationManager stopUpdatingLocation];
6 }
三,地理信息反编码
地标类属性:
1,address Dictionary,地址信息的字典,包含一些键值对,其中的键是在Address Book framework(地址簿框架)中定义好的。
2,ISO country Code,ISO国家代号;
3,country,国家信息。
4,postalCode,邮政编码。
5,administrative Area,行政区域信息。
6,sub Administrative Area,行政区域附加信息。
7,locality,指定城市信息。
8,subLocality,指定城市信息附加信息。
9,thoroughfare,指定街道级别信息。
10,sub Thoroughfare,指定街道级别的附加信息。
四、关於定位服务的测试
定位服务应用的测试和运营有两个选择:模拟器和设备。
原则上先通过模拟器,然後使用设备测试,但由於有些定位服务比较特别,使用设备测试时需要我们拿着设备到现场测试,因此定位服务的测试也有局限性。但我们不能因为要判断某个地方是否有这个建筑物,而专门去一趟。所以,模拟器的测试,有时候是不可替代的。
五.使用iOS6苹果地图
在iOS6後,苹果设备已经不再使用Google地图,而是使用自己开发的苹果地图,但是API编码接口没有太大的变化,使得开发人员不需要学习新东西才能进行地图的开发。
看了以上的内容,相信大家对iOS的地图和定位开发已经有一个大概的认识,地图和定位看上去是挺复杂的东西,但其实只要用心去学去做也是挺简单的事。
本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/40462.html
如有侵犯您的合法权益请发邮件951076433@qq.com联系删除