iOS中判断照片和相机权限

1、照片权限判断

在iOS6之后,app中使用照片(即自带相册)需要用户权限验证,所以我们可以做一个权限判断给出友好的提示或者界面效果。

相册判断需要导入 <AssetsLibrary/AssetsLibrary.h>

ALAuthorizationStatus author = [ALAssetsLibrary authorizationStatus];
typedef NS_ENUM(NSInteger, ALAuthorizationStatus) {
    ALAuthorizationStatusNotDetermined = 0, // 用户还未决定是否授权访问相册
    ALAuthorizationStatusRestricted,        // 没有被授权访问相册,可能是家长控制权限
                                            // The user cannot change this application’s status, possibly due to active restrictions
                                            //  such as parental controls being in place.
    ALAuthorizationStatusDenied,            // 用户拒绝程序访问相册
    ALAuthorizationStatusAuthorized         // 用户已授权程序访问相册
} __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_6_0);

2、相机权限判断

在iOS7之前,设置中是没有相机设置选项,程序默认是可以访问相机的。在iOS7之后添加了这一权限。

判断相机权限需要导入 <AVFoundation/AVCaptureDevice.h>

NSString *mediaType = AVMediaTypeVideo;

AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:mediaType];
枚举类型与相册的基本一致。
typedef NS_ENUM(NSInteger, AVAuthorizationStatus) {
	AVAuthorizationStatusNotDetermined = 0,   //用户还未决定是否给程序授权相机权限
	AVAuthorizationStatusRestricted,<span style="white-space:pre">	</span>//没有授权相机权限,可能是家长控制权限
	AVAuthorizationStatusDenied,<span style="white-space:pre">		</span>//用户拒绝程序拥有相机权限
	AVAuthorizationStatusAuthorized<span style="white-space:pre">		</span>//用户授权程序访问相机
} NS_AVAILABLE_IOS(7_0);



原文地址:https://www.cnblogs.com/wanghang/p/6298874.html