如何在iOS8中以编程方式知道该应用程序是否具有摄像头访问权限

Jag*_*een 14 camera xcode6 ios8

我的应用程序使用相机.在iOS8中,它们包含一个新的隐私设置,Camera用户可以在其中管理每个应用程序的相机权限.

问题:
如果用户不允许我的应用程序使用相机,那么我怎么知道我的应用程序无法访问相机.
就像我可以ALAssetsLibrary authorizationStatus用来发现photolibrary的状态或ABAddressBookGetAuthorizationStatus了解电话簿访问的状态.

问题:
如何知道我的应用程序是否在iOS8中具有相机访问权限,以便我可以提示用户允许相机访问我的应用程序?


我有照片展位的下面打印屏幕,与我的应用程序有相同的问题.

在此输入图像描述

在此输入图像描述

在此输入图像描述


当没有摄像头访问时,它只会显示黑屏,没有任何消息.

Ani*_*wal 25

检查AVAuthorizationStatus以获取相机可用性,然后相应地处理案例

AVAuthorizationStatus status = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo];
if(status == AVAuthorizationStatusAuthorized) {
  // authorized
} else if(status == AVAuthorizationStatusDenied){
  // denied
} else if(status == AVAuthorizationStatusRestricted){
  // restricted
} else if(status == AVAuthorizationStatusNotDetermined){
  // not determined
  [AVCaptureDevice requestAccessForMediaType:AVMediaTypeVideo completionHandler:^(BOOL granted) {
    if(granted){
  NSLog(@"Granted access");
} else {
  NSLog(@"Not granted access");
}
  }];
}
Run Code Online (Sandbox Code Playgroud)