#iphone #ios #ipad #video-capture #mirroring
#iPhone #iOS #iPad #видеозахват #зеркальное отображение
Вопрос:
Мне нужно зеркалирование в моем приложении, но iPad 1, который не взломан джейлом, его не поддерживает. Есть ли какой-либо способ использовать зеркальное отображение в моем приложении, не затрагивая другие приложения (в изолированной среде)?
Ответ №1:
На iPad one вы можете отправлять контент на проектор, но только из своего приложения. т. е. вы не можете зеркально отображать springboard или другие приложения.
Посмотрите на документацию для UIScreen и уведомления, которые он отправляет при подключении нового экрана. Вам нужно будет создать отдельное UIWindow для управления содержимым этого экрана.
Вот некоторый код с открытым исходным кодом, который обрабатывает весь процесс. Я сам этим не пользовался, но выглядит неплохо: http://www.touchcentric.com/blog/archives/123
Комментарии:
1. Код Touchcentric великолепен, он многому вас научит, но смотрите документы Apple о том, как сосуществовать с последними версиями iOS и iPad2.
Ответ №2:
Важно отметить, что с iOS 4.3 и iPad2 зеркальное отображение экрана намного проще — почти по умолчанию:
«На совместимых устройствах iOS автоматически зеркально отображает дисплей при подключении внешнего экрана. Если вы не хотите, чтобы содержимое вашего приложения отображалось зеркально, ваше приложение должно отображать альтернативное содержимое на внешнем дисплее вместо содержимого по умолчанию. Для этого используйте обычный процесс отображения содержимого на внешнем дисплее, как описано в разделе Отображение содержимого на внешнем дисплее в руководстве по программированию View для iOS.»
http://developer.apple.com/library/ios/#qa/qa1738/_index.html#//apple_ref/doc/uid/DTS40010848
Чтобы разработать решение для всех устройств, смотрите документ Apple:
Пример кода:
http://developer.apple.com/library/ios/#samplecode/ExternalDisplay/Introduction/Intro.html
Ответ №3:
ваш iPad поддерживает несколько выходных данных, но вам нужно запрограммировать их самостоятельно. Вам нужно создать второе пользовательское окно и показать то, что вы хотите показать во 2-м diplay в этом UIWindow.