Первое, что вам нужно сделать, это определить, есть ли на вашем устройстве фронтальная камера. Для этого вам нужно перебрать видеоустройства.
Попробуйте этот метод UIImagePickerController
:
+ (BOOL)isCameraDeviceAvailable:(UIImagePickerControllerCameraDevice)cameraDevice
Это метод класса, и UIImagePickerControllerCameraDevice
может принимать два значения:
- UIImagePickerControllerCameraDeviceRear
- UIImagePickerControllerCameraDeviceFront
Пример кода:
if( [UIImagePickerController isCameraDeviceAvailable: UIImagePickerControllerCameraDeviceFront ])
{
// do something
}
Обратите внимание, что это доступно для iOS 4.0 и более поздних версий.
Также я не уверен, есть ли какие-либо API для запуска фронтальной камеры. Кажется, что камера всегда запускается в том же режиме, в котором пользователь оставил ее в последний раз, когда она использовалась. Возможно, по замыслу Apple не выставляла никаких API, чтобы изменить это. Возможно, Apple хотела, чтобы пользователи звонили по этому поводу.
Тем не менее, вы можете по крайней мере определить наличие Fron Camera и предоставить свою функцию.