iOS中判断照片和相机权限

2023-02-12,,,,

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);

iOS中判断照片和相机权限的相关教程结束。

《iOS中判断照片和相机权限.doc》

下载本文的Word格式文档,以方便收藏与打印。