地图定位IOS8.0之前的定位

在ios8.0之前定位的步骤如下:

1.首先将我们的项目版本切换到7.0

2.在ViewController.m文件中导入头文件

#import <CoreLocation/CoreLocation.h>

3.创建位置管理者 使用懒加载的方式 并设置代理,遵守协议 因为位置管理者对象不是单例 所以为了保证不让它一创建出来就销毁 所以我们需要定义为成员属性

4.实现一个小功能  当用户点击控制器的view的时候 我们开始定位用户的位置 所以在ViewController.m中实现以下方法

5.当定位到用户位置之后 位置管理者会通知他的代理 ,所以我们需要实现以下代理方法  在这个方法里面做一些相关的业务处理

 

此时我们将模拟器选中到5s

然后运行程序,会出现如下界面:

然后我们点击屏幕 出现以下界面:

你可能看到其他的app安装的时候 都会弹出这个界面 ,这是因为从ios6开始 苹果为了保护用户隐私 凡是涉及到用户隐私相关的操作 都需要用户允许才行。

但是你会发现 这个提示信息是英文的 ,但是其他的app弹出是 都是用的我们天朝人都能看得懂的非常友好的中文提示,那么这个我们怎么修改呢?

其实很简单 我们只需要在info.plist文件中添加如下字段 即可:

Privacy - Location Usage Description

比如我填写了如下信息:

这个时候我们运行程序 你会发现提示信息已经变成我们修改的内容了:

我们点击 OK

这个时候你会看到控制台会一直打印 信息:

 

到这里位置 我们就能成功的实现用户的位置定位,但是还有个问题就是 如果我们将应用退到后台的时候  就无法定位用户位置 ,这个问题怎么解决呢?

其实解决方法很简单 只需要按照我下图的演示设置下就可以了:

第一步:

第二步:

第三步:

经过上面设置之后 试试 将应用退到后台  ,依然可以定位到用户的位置的

 

好了,就先讲到这里了!

 

posted @ 2015-09-11 11:48  勇敢的少年  阅读(237)  评论(0编辑  收藏  举报