Как вы можете воспроизвести аудио видео YouTube в фоновом режиме на iOS 4? - PullRequest
2 голосов
/ 04 октября 2010

В Safari на OS4 можно передавать потоковое аудио с видео YouTube в фоновом режиме:

Чтобы попробовать запустить видео с YouTube, отправьте приложение в фоновом режиме, дважды нажмите кнопку «Домой» и переключитесь на другое приложение. В этот момент звук останавливается, но его можно перезаписать, приостановить и т. Д. В фоновом режиме, используя пульты дистанционного управления, связанные с Safari, также при использовании другого приложения.

Я хочу повторить это поведение в своем приложении, но фа не нашел решения этой проблемы. Я использую стандартную технику UIWebView, чтобы запустить видео YouTube, оставаясь в приложении, Я установил для категории AVAudioSession значение AVAudioSessionCategoryPlayback, а для Обязательных фоновых режимов в Info.plist установлено значение «audio». Я также переопределил canBecomeFirstResponder UIViewController для возврата true.

Что я получаю, так это то, что видео YouTube можно запускать, приостанавливать и возобновлять с пульта дистанционного управления, но как только вы переключаетесь на другое приложение, проигрыватель YouTube закрывается и звук останавливается.

Что-нибудь, что мне не хватает? Как Safari может это сделать?

1 Ответ

0 голосов
/ 02 апреля 2011

Дело в том, что Safari.app, как известно, не использует UIWebView. Помните беспредел по поводу разницы в скорости двигателя JS между Safari и UIWebView месяц назад? Ну, ИМХО, ваша проблема связана с этой разницей. Я не удивлюсь, что ваш подход не работает, учитывая эту характеристику. Я думаю, что UIWebView перехватывает фоновые события и отключает себя в целях экономии памяти.

Возможно, вы захотите попробовать приложение на основе AVPlayer, которое предназначено для воспроизведения потокового аудиоконтента вместо UIWebView. Или скрытый MPMoviePlayerController, если вы хотите услышать звук онлайн-фильма.

Надеюсь, это поможет!

...