iOS11问题: 定位服务在iOS11系统上不能使用?

iOS开发实战 同时被 3 个专栏收录
84 篇文章 0 订阅
124 篇文章 32 订阅

iOS11问题: 定位服务在iOS11系统上不能使用?

这里写图片描述

Q:我刚刚用iOS11 SDK重新构建了应用程序,发现定位服务现在根本不起作用。

原因:A:因为苹果现在增加了一项新的隐私保护功能 NSLocationAlwaysAndWhenInUseUsageDeion

并且原有的 NSLocationAlwaysUsageDeion 被降级为 NSLocationWhenInUseUsageDeion

想要达到之前 NSLocationAlwaysUsageDeion 的定位效果,需要在info.plist文件中添加 NSLocationAlwaysAndWhenInUseUsageDeionNSLocationWhenInUseUsageDeion 两个就可以了。否则,徒劳无功,你的App依旧不支持Always authorization。

你在使用这个新Key时,位置服务可能仍然不起作用,在我进一步的搜索之后,发现这个gem与所有其他的调试信息混杂在一起:

这个App在没有usage deion的情况下能访问敏感隐私数据。App的info.plist必须包含NSLocationAlwaysAndWhenInUseUsageDeionNSLocationWhenInUseUsageDeion keys中使用字符串值向用户解释该应用如何使用这些数据

This app has attempted to access privacy-sensitive data without a usage deion. The app's Info.plist must contain both NSLocationAlwaysAndWhenInUseUsageDeion and NSLocationWhenInUseUsageDeion keys with string values explaining to the user how the app uses this data

这与更新CLLocationManager.h文件中的注释有很大矛盾。

查看plist权限可以看到新增:

这里写图片描述

解决办法:

添加新Key NSLocationAlwaysAndWhenInUseUsageDeion和旧Key NSLocationWhenInUseUsageDeion的时候,定位服务就能正常使用了.


iOS开发者交流群:①446310206 ②446310206

  • 1
    点赞
  • 1
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

打赏
文章很值,打赏犒劳作者一下
相关推荐
©️2020 CSDN 皮肤主题: 代码科技 设计师:Amelia_0503 返回首页

打赏

韩俊强

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值