object-C_多媒体权限设置
2016-08-08 本文已影响133人
陈胜华
1.多媒体权限(相册,相机,麦克风)
/**
* 相册权限枚举
*/
typedef NS_ENUM(NSInteger, MediaStatusType) {
MediaStatusTypeMore = 1,
MediaStatusTypePhoto,//相册
MediaStatusTypeCamera,//相机
MediaStatusTypeAudio//麦克风
};
//检查访问相册权限
- (MediaStatusType)checkOutMediaStatus {
//相机权限
NSString *mediaType = AVMediaTypeVideo;
AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:mediaType];
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
return MediaStatusTypeCamera;
}
//相册权限
ALAuthorizationStatus author = [ALAssetsLibrary authorizationStatus];
if (author == ALAuthorizationStatusRestricted || author ==ALAuthorizationStatusDenied) {
return MediaStatusTypePhoto;
}
//麦克风权限
AVAuthorizationStatus videoAuthStatus = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeAudio];
if(videoAuthStatus == AVAuthorizationStatusRestricted || videoAuthStatus == AVAuthorizationStatusDenied) {// 未授权
return MediaStatusTypeAudio;
}
return MediaStatusTypeMore;
}
//进入系统相关设置
- (void)efOpenMediaAuthority {
//跳转到设置页面中自己的应用下
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
}