美文网首页iOS开发笔记
iOS开发中判断相册、相机、位置等权限

iOS开发中判断相册、相机、位置等权限

作者: 这人很懒 | 来源:发表于2016-04-07 14:14 被阅读8900次

    1、判断用户是否获取了相册的访问权限

    #import<AssetsLibrary/AssetsLibrary.h>

    ALAuthorizationStatus author = [ALAssetsLibraryauthorizationStatus];

    if(author == ALAuthorizationStatusRestricted || author ==ALAuthorizationStatusDenied){

    //无权限

    }

    typedefenum{

    ALAuthorizationStatusNotDetermined =0  // 用户尚未做出选择这个应用程序的问候

    // User has not yet made a choice with regards to this application

    ALAuthorizationStatusRestricted  // 此应用程序没有被授权访问的照片数据。可能是家长控制权限

    ,// This application is not authorized to access photo data.

    // The user cannot change this application’s status, possibly due to active restrictions

    //such as parental controls being in place.

    ALAuthorizationStatusDenied  // 用户已经明确否认了这一照片数据的应用程序访问

    // User has explicitly denied this application access to photos data.

    ALAuthorizationStatusAuthorized  //用户已经授权应用访问照片数据

    // User has authorized this application to access photos data.

    }

    2.判断用户是否有权限访问相机

    #import<AVFoundation/AVCaptureDevice.h>

    #import<AVFoundation/AVMediaFormat.h>

    AVAuthorizationStatus authStatus = [AVCaptureDeviceauthorizationStatusForMediaType:AVMediaTypeVideo];

    if(authStatus == AVAuthorizationStatusRestricted || authStatus ==AVAuthorizationStatusDenied){

    //无权限

    }

    3.判断是否开启定位服务

    [CLLocationManagerlocationServicesEnabled]//检测的是整个的iOS系统的定位服务是否开启检测当前应用的定位服务是否开启需要通过一下方法来检测

    - (void)locationManager:(CLLocationManager*)managerdidFailWithError:(NSError*)error

    相关文章

      网友评论

      • 梁森的简书:如何判断是否有写入权限呢?
        这人很懒:@梁森森 iOS11之后:默认开启访问相册权限(读权限),无需用户授权,无需添加NSPhotoLibraryUsageDescription,适配iOS11之前的还是需要加的。
        添加图片到相册(写权限),需要用户授权,需要添加NSPhotoLibraryAddUsageDescription。
        梁森的简书:权限去掉了? 我现在想知道的是写入权限 不是访问权限
        这人很懒:@梁森森 这里就是根据获取的那几个 枚举来判断就好啊 获取权限 就是允许读取了 但是在iOS11这个权限改掉了

      本文标题:iOS开发中判断相册、相机、位置等权限

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