标签:
在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
这个时候你会看到控制台会一直打印 信息:
到这里位置 我们就能成功的实现用户的位置定位,但是还有个问题就是 如果我们将应用退到后台的时候 就无法定位用户位置 ,这个问题怎么解决呢?
其实解决方法很简单 只需要按照我下图的演示设置下就可以了:
第一步:
第二步:
第三步:
经过上面设置之后 试试 将应用退到后台 ,依然可以定位到用户的位置的
好了,就先讲到这里了!
标签:
原文地址:http://www.cnblogs.com/syios/p/4800508.html