判断相机权限:

NSString *mediaType = AVMediaTypeVideo;
AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:mediaType];
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
                   //相机权限受限制
}
typedef NS_ENUM(NSInteger, AVAuthorizationStatus) {
    AVAuthorizationStatusNotDetermined = 0,    请问是否授权访问
    AVAuthorizationStatusRestricted,     权限都限制
    AVAuthorizationStatusDenied,    拒绝访问
    AVAuthorizationStatusAuthorized     授权访问
} NS_AVAILABLE_IOS(7_0) __TVOS_PROHIBITED;

 

判断相册权限:

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0){
PHAuthorizationStatus status = [PHPhotoLibrary authorizationStatus];
    if (status == PHAuthorizationStatusDenied || status == PHAuthorizationStatusRestricted) {
        //相册权限受限制
    }
}
else{
    ALAuthorizationStatus status = [ALAssetsLibrary authorizationStatus];
    if (status == ALAuthorizationStatusDenied || status == ALAuthorizationStatusRestricted) {
         //相册权限受限制
    }
}

ALAuthorizationStatus 在iOS9之后废弃了,
PHAuthorizationStatus 是ios8新增的替代 ALAuthorizationStatus 的方法。
typedef NS_ENUM(NSInteger, PHAuthorizationStatus) {
    PHAuthorizationStatusNotDetermined = 0, 
    PHAuthorizationStatusRestricted,       
    PHAuthorizationStatusDenied,        
    PHAuthorizationStatusAuthorized        
} NS_AVAILABLE_IOS(8_0);
typedef NS_ENUM(NSInteger, ALAuthorizationStatus) {
    ALAuthorizationStatusNotDetermined 
    ALAuthorizationStatusRestricted 
    ALAuthorizationStatusDenied 
    ALAuthorizationStatusAuthorized 
} NS_DEPRECATED_IOS(6_0, 9_0, "Use PHAuthorizationStatus in the Photos framework instead");

 

相关文章:

  • 2021-10-31
  • 2021-11-30
  • 2021-08-14
  • 2021-09-09
  • 2021-12-24
  • 2021-10-01
  • 2021-08-22
  • 2021-08-03
猜你喜欢
  • 2021-11-02
  • 2022-12-23
  • 2021-05-12
  • 2021-12-22
  • 2021-10-14
  • 2021-10-14
  • 2021-10-21
相关资源
相似解决方案