IOS_Location_After_8.0

>>> IOS 定位失败 <<<

目录

A - IOS 定位过程中没有任何反应

B - 现在我大概走一下流程

C - 问题出现了。。。。。。。。。。。

D - 开始解决问题

Warning

A - IOS 定位过程中没有任何反应

在你很高兴的按照一些网上的教程设置好你的location之后,很不幸你却发现你的定位delegate并没有任何的响应。如果你使用button作为测试的时候,点击你的button,就是没有任何反应。

如果不想了解前提,可以直接跳到 问题的解决方案

B - 现在我大概走一下流程

设置好你的代码

> image

> image

> image

> image


C - 问题出现了。。。。。。。。。。。

1.高兴之后却发现定位竟然没有任何反应。。。坑死了 -_-!

2.然后就是一堆问题的搜索

image

然后就发现这些参考:

iOS8中定位服务的变化(CLLocationManager协议方法不响应,无法回掉GPS方法,不出
ios8.0下CLLocationManager定位服务需要授权了
iOS CLLocationManager定位,IOS8注意
iOS CLLocationManager定位
iOS8中定位服务的变化(CLLocationManager协议方法不响应,无法回掉GPS方法,不出现获取权限提示)

收获来啦

image

3.然后定位到 Location Awareness PG Introduction

好多繁杂的搜索和过滤后,定位到了这个Location and Maps Programming Guide

image

但是貌似没有发现 8.0 之后的说法


D - 开始解决问题

1.IOS 8.0 之后的改变

很多的说法就是在 8.0 之后对于这一些安全措施进行了很多的设置,所以在你使用之前,需要去显式的开启它。不知道是真还是假,等以后有时间我在这个,目前还找不到。

所以这个就先空白一下。。。。。不好意思!嘻嘻

2.问题的解决方案

好,既然问题有了症状,那么就在下药。。。。

  • 设置你的info.plist文件,在Surporting files 目录里面。

  • 加上两个 Key - Value

    image

  • 在启动视图之前做好一些准备

    image

  • 现在开始调试

    image


E - Ok,我的定位也就 working 了, 你呢?

Warning - 需要注意的事项

  • 如果你没有设置那两个 Key-Value在 info.plist 文件里,授权提示还是会出现,只是效果和没有设置的差不多。

  • 然后呢,记得 <CLLocationManagerDelegate> 和 设置 delegate

  • 如果使用的是模拟器,那么按照上面的步骤还不行的话,是这重置一下模拟器,我就是这么干的,it working!