Я хотел бы, чтобы мое приложение открывало камеру (в настоящее время UIImagePickerController) лицом к лицу, если доступно. (SDK для iPhone).

Как я могу это сделать?

10
Olav 8 Сен 2010 в 19:15

2 ответа

Лучший ответ

Это прямо там, в документация:

picker.cameraDevice = UIImagePickerControllerCameraDeviceFront;

Конечно, сначала вам нужно проверить, доступна ли на самом деле передняя камера. Он также доступен только начиная с iOS 4.0.

41
Torsten Marek 9 Сен 2011 в 11:21
Кажется, когда я устанавливаю XCode SDK на IOS4, он компилируется и не дает сбоев на устройстве без фронтальной камеры. Кажется, исполняемый файл также может работать на устройстве с IOS <4, но я не тестировал все комбинации.
 – 
Olav
9 Сен 2010 в 14:09
Теперь я получаю: Info.plist для приложения в .... указывает минимальную версию ОС 4.1, которая слишком высока для установки на .......
 – 
Olav
9 Сен 2010 в 17:33
Это происходит при попытке запустить на устройстве, где (версия <4) после того, как мне пришлось обновить SDK до 4.1, потому что мой телефон с передней камерой был 4.1
 – 
Olav
9 Сен 2010 в 17:35
Получил много других ответов на SO, и все они предложили использовать AVFoundation.
 – 
rohan-patel
7 Фев 2015 в 02:17

Попробуйте этот метод UIImagePickerController:

 + (BOOL)isCameraDeviceAvailable:(UIImagePickerControllerCameraDevice)cameraDevice

Это метод класса, и UIImagePickerControllerCameraDevice может принимать два значения:

  - UIImagePickerControllerCameraDeviceRear
  - UIImagePickerControllerCameraDeviceFront
  Example code:

        if([UIImagePickerController isCameraDeviceAvailable: UIImagePickerControllerCameraDeviceFront ])
        {
        // do something
        }
8
Piyush Dubey 17 Авг 2013 в 15:34