gpt4 book ai didi

ios - 在 iOS 中检测相机的权限

转载 作者:IT王子 更新时间:2023-10-29 07:27:26 24 4
gpt4 key购买 nike

我正在开发一个非常简单的视频应用程序。我用的是官方的控件:UIImagePickerController。

问题来了。首次呈现 UIImagePickerController 时,iOS 会请求权限。用户可以单击是或否。如果用户单击否,则不会关闭该控件。相反,如果用户一直点击开始按钮,计时器会继续运行,而屏幕始终是黑色的,用户无法停止计时器或返回。用户唯一能做的就是杀死应用程序。下次 UIImagePickerController 出现时,还是黑屏,用户点击开始就回不去了。

我想知道这是不是一个错误。有什么方法可以检测相机的权限,以便我们决定是否显示 UIImagePickerController?

最佳答案

检查 AVAuthorizationStatus 并妥善处理。

NSString *mediaType = AVMediaTypeVideo;
AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:mediaType];
if(authStatus == AVAuthorizationStatusAuthorized) {
// do your logic
} else if(authStatus == AVAuthorizationStatusDenied){
// denied
} else if(authStatus == AVAuthorizationStatusRestricted){
// restricted, normally won't happen
} else if(authStatus == AVAuthorizationStatusNotDetermined){
// not determined?!
[AVCaptureDevice requestAccessForMediaType:mediaType completionHandler:^(BOOL granted) {
if(granted){
NSLog(@"Granted access to %@", mediaType);
} else {
NSLog(@"Not granted access to %@", mediaType);
}
}];
} else {
// impossible, unknown authorization status
}

关于ios - 在 iOS 中检测相机的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20464631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com