美文网首页
iOS11中的定位授权的解决方法

iOS11中的定位授权的解决方法

作者: 小船_d15e | 来源:发表于2020-09-19 16:51 被阅读0次

本篇文章主要介绍了iOS11中的定位授权的解决方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

AI

本文介绍了iOS11中的定位授权的解决方法,分享给大家,具体如下:

前台定位权限

1,增加NSLocationWhenInUseUsageDescription。
2,创建CLLocationManager对象,在使用定位服务前调用requestWhenInUseAuthorization()。
3,通过func locationManager(_ manager: CLLocationManager, didChangeAuthorization status: CLAuthorizationStatus)处理权限变化。该函数并不会在每次改改变权限后都会被调用。

参考:
https://developer.apple.com/documentation/corelocation/choosing_the_authorization_level_for_location_services/requesting_when_in_use_authorization

前后台定位权限

如果希望在app在前台后台都可以使用定位服务,需要完成以下几点:

1,在plist中增加NSLocationWhenInUseUsageDescription(使用定位都需要)和NSLocationAlwaysAndWhenInUsageDescription(使用后台才需要),如果需要支持iOS10的话,增加NSLocationAlwaysUsageDescription(兼容需要)。

2,创建CLLocationManager对象,用requestWhenInUseAuthorization()获得基本定位支持,用requestAlwaysAuthorization()获得前后台定位支持。

3,在第一次调用requestAlwaysAuthorization()时,会提示NSLocationAlwaysAndWhenInUsageDescription中指定的文字,让用户选择是升级到全权限还是,前台权限。

4,通过func locationManager(_ manager: CLLocationManager, didChangeAuthorization status: CLAuthorizationStatus)处理权限变化。该函数并不会在每次改改变权限后都会被调用。

参考:

https://developer.apple.com/documentation/corelocation/choosing_the_authorization_level_for_location_services/request_always_authorization

注意:

requestWhenInUseAuthorization只有在用户未选择时会弹出对话框。

  • When +authorizationStatus != kCLAuthorizationStatusNotDetermined, (ie

  • generally after the first call) this method will do nothing.

我的理解补充:用户状态是授权一次(once),才会需要弹出"使用中(wheninuse)"的框, 用户选择“使用中(wheninuse,前台)”,在回调方法中,可以进一步弹“always(后台)”

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • iOS11中的定位授权的解决方法

    本篇文章主要介绍了iOS11中的定位授权的解决方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小...

  • 解决UICollectionView自定义HeadView遮挡滚

    由于出现在iOS11中,所以给出解决方法 Headview.h文件 Headview.m文件 日常Bug......

  • scrollView的contentOffset无法归零

    出现的原因主要是因为 iOS11 新增的 contentInsetAdjustmentBehavior导致,解决方法:

  • iOSinput输入光标掉落

    iOS11的兼容问题 jquery weUI的弹框定位为position:fixed; 修改body的定位: ...

  • 适配iOS11记录

    记录一下适配iOS11过程中遇到的问题以及解决方法。 1、tableView向下偏移20point app首页上,...

  • 定位授权

    1. 请求用户授权注意事项 (1) 在iOS8之后,苹果强制要求开发者主动申请授权,否则你的应用将无法使用定位功能...

  • 高德地图,ios11定位不准问题

    iOS11刚出来的时候我刚好做了一个关于高德定位的功能,发现只有IOS11以上的系统会产生较大定位误差。由iOS1...

  • 百度地图定位

    定位的补充: 1. 监听用户授权的状态 如果你选择使用的时候定位, 就是前台定位授权如果你选择全部时间都定位,就是...

  • iOS11 系统 UITableView 下移 问题

    在最近的一个项目开发中, 遇到了 iOS11系统 UITableView 下移动的问题,从网上搜搜了有许多解决方法...

  • iOS11(仅是iOS11和12)刷新tableview会出现向

    bug描述:在iOS11和12系统下,刷新tableview时,会出现向上偏移一大块的鬼畜现象。 解决方法:代码中...

网友评论

      本文标题:iOS11中的定位授权的解决方法

      本文链接:https://www.haomeiwen.com/subject/rtzeyktx.html