iOS. Приемы программирования
Шрифт:
Обсуждение
Как только вы обнаружите, что устройство с системой iOS, на котором работает ваше приложение, поддерживает запись видео, можно открыть инструмент для выбора изображений с типом источника UIImagePickerControllerSourceTypeCamera и типом медийной информации kUTTypeMovie, чтобы пользователь вашего приложения мог снимать видео. Как только съемка будет закончена, будет вызван метод делегата imagePickerController: didFinishPickingMediaWithInfo: и вы сможете использовать параметр словаря didFinishPickingMediaWithInfo, чтобы узнать более подробную информацию об отснятом видео. (Значения, которые могут быть размещены в таком словаре, подробно рассмотрены в разделе 13.2.)
Когда пользователь записывает видео, работая при этом с инструментом для выбора изображений, это видео будет сохраняться во временной папке в пакете вашего приложения, а не в каталоге для снимков камеры на устройстве (то есть не в Camera Roll). Пример такого URL: file://localhost/private/var/mobile/Applications/<APPID>/tmp/captureT0x104e20.tmp.TQ9UTr/capturedvideo.MOV.
Значение APPID в этом URL будет представлять уникальный идентификатор вашего приложения. Разумеется, оно будет специфичным в каждой конкретной программе.
Как программист вы можете предоставить пользователю возможность не только снимать видео на камеру устройства, но и модифицировать уже отснятый видеоматериал. Можно изменить два важных свойства класса UIImagePickerController, чтобы откорректировать стандартный ход записи видео:
• videoQuality — характеризует качество записываемого видео. Для данного свойства можно выбрать, например, значение UIImagePickerControllerQualityTypeHigh или UIImagePickerControllerQualityTypeMedium;
• videoMaximumDuration — указывает максимальную длительность видео. Это значение измеряется в секундах.
Например, если мы предоставляем пользователю возможность записывать высококачественное видео длительностью до 30 секунд, то можем просто изменить значения вышеупомянутых свойств экземпляра UIImagePickerController:
См. также
Раздел 13.1.
13.4. Сохранение снимков в библиотеке фотографий
Постановка задачи
Необходимо обеспечить возможность сохранения снимков в пользовательской библиотеке фотографий.
Решение
Воспользуйтесь процедурой UIImageWriteToSavedPhotosAlbum: