Airplay с iPad — отдельный UIView для отображения на Apple TV

Я хочу использовать Airplay для отправки изображений в высоком разрешении на Apple TV.

Airplay отлично работает на моем iPad 2 с iOS 5.0.1.

Когда я запускаю свое приложение, в моем массиве экранов UIScreen есть только 1 элемент. (разумеется, iPad). Я регистрируюсь для получения уведомления о дополнительных экранах, оно никогда не приходит, пока я не открою панель многозадачности и не выберу свой Apple TV. Я не хочу этого делать.

Я хочу всплывающее окно в приложении, где я могу выбрать Apple TV или любое другое устройство для трансляции в списке.

Я использовал MPVolumeView, который дал мне этот список — и позволил мне выбрать Apple TV — но я все еще не получаю уведомление о обратном вызове о том, что Apple TV был выбран — так что я могу настроить свой UIWindow для нового представления ! (но панель многозадачности подтверждает, что Apple TV теперь отмечен галочкой, и значок из MPVolumeView тоже становится синим).

Я также пробовал пример приложения externalDisplay, и он тоже показывает только один экран в списке UIScreens при запуске приложения.

Что мне не хватает?

Спасибо


person bandejapaisa    schedule 21.12.2011    source источник


Ответы (1)


К сожалению, я считаю, что поведение, которое вы описываете, является точным и преднамеренным. Когда вы говорите о доступе к Apple TV в качестве еще одного UIScreen, вы говорите о «зеркалировании», а включение зеркалирования требует определенного действия конечного пользователя, которое вы описываете: переход к панели многозадачности и включение зеркалирования.

Было бы неплохо иметь возможность включить зеркалирование из приложения - надеюсь, кто-нибудь поправит меня, если я ошибаюсь, потому что я хотел бы это для своего приложения!

person Rob Reuss    schedule 18.01.2012
comment
Нет, ты прав. Я разговаривал с несколькими парнями из Apple, и они подтвердили, что это текущее поведение, но также согласны с тем, что это поведение ошибочно для лучшего взаимодействия с пользователем, и собираются предложить изменение. Так что будьте готовы к будущему выпуску, в котором будет доступно это желаемое поведение. - person bandejapaisa; 18.01.2012
comment
Большое спасибо, это приятно знать. Кстати, я только что узнал, что AirServer теперь поддерживает зеркалирование сигнала AirPlay на Mac. Это хорошая дополнительная вещь для отладки (и на самом деле даст пользователям моего приложения ощутимую выгоду). К сожалению, текущее воплощение этого приложения также ограничено зеркалированием 720p. Я отправил им заявку в службу поддержки, чтобы выяснить их намерения повысить его до 1080p. Ваше здоровье. - person Rob Reuss; 12.03.2012
comment
На всякий случай, если вам это подходит, зеркалирование может быть включено из приложения с использованием частных API. spin.atomicobject.com/2012/04 /23/ - person Roland; 28.05.2012
comment
Спасибо, Роланд — очень интересное чтение и своего рода дразня — я бы хотел, чтобы Apple раскрыла эти API. Я полагаю, что они колеблются, потому что типичные пользователи-потребители (не гики) изо всех сил пытаются понять AirPlay, и поэтому они хотят жестко контролировать реализацию. Бьюсь об заклад, они скоро дадут нам больше контроля, хотя, вероятно, абстракция этих API и более ограниченная (что-то вроде того, что вы получаете с MPVolumeView, но с контролем зеркалирования). - person Rob Reuss; 28.05.2012