Как узнать, что приложение имеет доступ к камере или нет программно в iOS8
В моем приложении используется камера.
В iOS8 они включают новую настройку конфиденциальности, Camera
, где пользователь может управлять
использование прав на камеры для каждого приложения.
Проблема:
Если пользователь не разрешил моему приложению использовать камеру, то как я могу узнать, что
У моего приложения нет доступа для камеры.
как я могу использовать ALAssetsLibrary authorizationStatus
, чтобы узнать статус фотобиблиотеки
или ABAddressBookGetAuthorizationStatus
, чтобы узнать статус доступа к телефонной книге.
Вопрос:
Как я могу узнать, имеет ли мое приложение доступ камеры или нет в iOS8,
так что я могу предложить пользователю разрешить доступ камеры для моего приложения?
У меня ниже экрана печати фотобумаги, которые имеют одинаковую проблему
как мое приложение.
![enter image description here]()
![enter image description here]()
![enter image description here]()
Если доступ к камере отсутствует, будет отображаться только черный экран. Нет сообщений.
Ответы
Ответ 1
Проверьте 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");
}
}];
}