Xcode/iOS 5 开发定位服务的App

在本教程中(也是一步一步学习iOS 5 编程-第三版-中文版PDF的第二十四部分),我们将演示如何在App中添加GPS功能,并获取用户当前的位置。同时,转换GPS坐标为街道地址信息。实现这一功能是非常有趣且相当简单的。

 

定位服务可提升App的用户体验。如果你在开发一个旅行方面的App,你可基于用户当前的位置,搜索附近的饭馆或旅馆。你也发现多数图像应用程序提 供了定位功能,保存图像拍照的位置信息。Core Location框架提供了必要的Objective-C接口,用来获取用户位置信息。通过获得的GPS坐标,你可以使用API解析出实际的街道或者使用 Map框架,进一步在地图上显示位置信息。

在本教程中,我们将创建一个简单的App(FindMe App),演示如何使用Core Location框架。下面是我们将要做的事情:

  • 创建一个简单的接口,显示GPS坐标和地址;
  • 学习如何使用Core Location APIs检索当前位置;
  • 使用内置的APIs转换GPS坐标为街道地址;

为了获取用户当前位置,我们需要使用iOS SDK提供的Core Location框架。然而,默认情况下,Core Location框架并没有加入到任何Xcode项目中。我们需要手工添加。

和其他iOS SDK的库一样,Core Location也使用了委托模式(delegate patter)。为了应用Core Location框架,我们的视图控制器也应该遵守CLLocationManagerDelegate协议。这个协议定义了从 CLLocationManager对象获取位置信息信息(Location)和航向信息(Heading)的方法。

 

如下是FindMe App的运行界面:

 

 

上图显示的就是我当前地址信息,非常具体。童鞋们如果来找我,记得买巧克力过来哦。

 

具体的操作步骤及技术细节在《一步一步学习iOS 编程(第三版)》中有详细的介绍。

posted on 2012-09-21 13:13  EntLib  阅读(1317)  评论(3编辑  收藏  举报