美文网首页
iOS 定位

iOS 定位

作者: 微笑中的你 | 来源:发表于2019-10-17 10:02 被阅读0次

    一、权限状态

    1、 kCLAuthorizationStatusNotDetermined

    当未确定授权状态时,如果应用程序在前台,请求授权会导致位置管理器提示用户请求权限。

    2、 kCLAuthorizationStatusRestricted

    App没有被授予定位权限,用户无法更改此应用程序的状态,可能是由于存在家长控制等主动限制。

    3、 kCLAuthorizationStatusDenied

    没有权限的可能性

    • 用户授权App为: 永不允许
    • 在设置中关闭了定位功能
    • 手机为 飞行模式

    如果用户在设置中启用了定位服务,状态值改变可以在一下方法中捕捉

    locationManager:didChangeAuthorizationStatus:
    

    如果你想知道位置服务在手机设置中是否开启,用以下方法判断

    locationServicesEnabled
    
    4、 kCLAuthorizationStatusAuthorized

    在 iOS 8中被废弃,等于 kCLAuthorizationStatusAuthorizedAlways

    5、 kCLAuthorizationStatusAuthorizedAlways

    无论用户是否正在使用App,可以使用所有的位置服务和接收位置事件

    6、 kCLAuthorizationStatusAuthorizedWhenInUse

    允许你在使用app期间使用所有的位置服务和接收位置事件,如果要使用后台定位,需要开启后台持续定位服务。

    二、定位流程思路

    1、是否有网,用户是否是飞行模式
    2、是否开启定位功能
    3、是否用户授权App定位功能
    4、如果有权限就开始定位,没有就提示相应内容
    5、在权限修改的回调函数中判断,有权限就开始定位

    相关文章

      网友评论

          本文标题:iOS 定位

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