2014-10-30 3 views
3

Этот код для захвата изображения один за другим с камеры, но после взятия одного изображения в следующий раз откроется камера, но с черным экраном (например, с закрытием затвора). Все другие версии ios работают , но не работает в ios 8.please скажите мне, как я могу его решить?Камера показывает черный экран в ios 8

-(void)openCamera 
{ 
    if(![PickerHandler doesDeviceSupportMediaType:ITEM_TYPE_PHOTO]) 
    { 
    [PickerHandler showNoDeviceSupportWarningForMediaType:ITEM_TYPE_PHOTO withDelegate:self]; 
    } 
    else 
    { 
    UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 
    picker.delegate = self; 
    picker.sourceType = UIImagePickerControllerSourceTypeCamera; 

    picker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeImage]; 
    [self presentViewController:picker animated:YES completion:nil]; 
    } 

} 
+0

Такая же проблема в iPad для меня. сообщите мне, если обнаружено какое-либо решение. –

+0

@RaviJSSI получает ту же проблему с презентацией камеры, второй раз получая черный экран. Не могли бы вы рассказать мне, как вы решили эту проблему? –

+0

вы можете установить режим сна в течение 1 секунды, когда камера откроется в следующий раз. – RaviJSS

ответ

1

этот код не работает в симуляторе.

UIImagePickerController *videoScreen = [[UIImagePickerController alloc] init]; 
    videoScreen.sourceType = UIImagePickerControllerSourceTypeCamera; 

    videoScreen.mediaTypes = [[NSArray alloc] initWithObjects:(NSString *)kUTTypeMovie, nil]; 

    videoScreen.allowsEditing = NO; 
    videoScreen.delegate = self; 

    [self presentViewController:videoScreen animated: YES completion:NO]; 
+0

его только для записи видео, но я хочу снимать изображения – RaviJSS

+0

Я хочу использовать камеру, а не библиотеку – RaviJSS

0

реализовать этот метод

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { 
[self dismissViewControllerAnimated:NO completion:NO]; 
} 
+0

Это работает или нет? – bhavik

+0

@ этот ответ работает или нет? – bhavik

2

Перейти к Настройки> Приватность> Фотографии ... и проверить, если ваше приложение имеет разрешение.

В коде используется для подтверждения доступа камеры.

- (BOOL)authorizedCameraAccess 
{ 
    AVAuthorizationStatus status = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo]; 
    return (status == AVAuthorizationStatusAuthorized); 
} 
Смежные вопросы