iOS7以后如何在App被杀死的情况下仍然获取用户地理位置

因为最近负责的项目需要实现实时定位的功能,所以研究了下与大家分享下成果.

苹果官方在iOS7.1以后对CoreLocation SDK进行更新,允许开发者在App被杀死的情况下,仍然可以获取用户的地理位置并且做一些操作.

前期准备:


打开后台定位功能


plist文件配置这两项

接下来是最核心的地方,创建一个CLLocationManager子类:

.h文件


CLLocationManager.h

.m文件


单例的生成与初始变量的初始化

最重要的部分:


限制触发机制

最后是AppDelegate初始化,在app被杀死的情况下,地理位置发生重大变化,apple系统会自动帮你唤醒app:


初始化


好了,所有配置都已经准备好了,现在让我们开始测试下,打开模拟器Debug-Location-FreewayDriver,然后后台杀死App,我这边是通过沙盒记录地理位置,通过tableview显示:


蓝色的为App前台记录的地理位置,红色为被杀死情况下记录的位置

本博文参考自Ricky的博文. 

中文参考 .

Demo下载 



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 因为最近比较闲,所以小白哥就想研究下定位与大家分享下成果. 苹果官方在iOS7.1以后对CoreLocation ...
    Dubai阅读 334评论 0 2
  • 简介 在移动互联网时代,移动app能解决用户的很多生活琐事,比如 周边:找餐馆、找KTV、找电影院等等 导航:根据...
    JonesCxy阅读 1,238评论 1 1
  • 毕业后的十多年里的生活惬意的不要不要的:想吃什么买什么,想看什么书买什么书,想出去旅游就出去,一个人自由的像空气一...
    maia_1718阅读 199评论 0 0
  • 前些天十点读书里面听了篇文章,《婚姻的差评师》。故事就是说各位女性朋友茶余饭后最快乐的事情莫过于吐糟自己的老公,...
    生命启航阅读 332评论 0 0
  • 人们都说世界很大, 路在脚下。 我好小好尴尬, 有时候真羡慕, 那匹黑色野马。 他很穷却很快乐, 因为他有梦想和花...
    黑糖_734阅读 155评论 0 5