Камера работает без разрешения камеры в iOS 12 - PullRequest
0 голосов
/ 03 октября 2018

В iOS 11, когда приложение запускается в первый раз, и я нажму на кнопку камеры, тогда оно покажет диалоговое окно Camera Permission.

Но в iOS 12, когда я нажимаю на кнопку камеры, она напрямую открывает камеру без какого-либо разрешения.

Я уже добавил Privacy - Camera Usage Description в мой Info.plist файл.

Я запутался, что делать?Пожалуйста, дайте мне какое-нибудь решение.

+(void)checkPermissionForCameraWithSuccess:(void (^) (void))successHandler  failure:(void (^) (void))failureHandler
{
    AVAuthorizationStatus status = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo];

    switch (status)
    {
        case AVAuthorizationStatusRestricted:
        case AVAuthorizationStatusDenied:{
            if (failureHandler)
                dispatch_async (dispatch_get_main_queue (), ^{ failureHandler (); });
        }; break;
        case AVAuthorizationStatusAuthorized:{
            if (successHandler)
                dispatch_async (dispatch_get_main_queue (), ^{ successHandler (); });
        }; break;
        case AVAuthorizationStatusNotDetermined:
        {
            [AVCaptureDevice requestAccessForMediaType:AVMediaTypeVideo completionHandler:^(BOOL granted) {
                if (!granted)
                {
                    if (failureHandler) {
                        dispatch_async (dispatch_get_main_queue (), ^{ failureHandler (); });
                    }
                } else {
                    if (successHandler) {
                        dispatch_async (dispatch_get_main_queue (), ^{ successHandler (); });
                    }
                }
            }];
            break;
        }
        default:
            break;
    }
}

Примечание: По умолчанию он возвращает status = AVAuthorizationStatusAuthorized без какого-либо разрешения диалогового окна.

...