ОБНОВЛЕНИЕ: Из приведенного ниже кода @ Manoj и некоторых других источников я теперь могу загрузить проигрыватель YouTube в веб-представление на основе API iframe Youtube.Но все еще остается вопрос: как я могу распознавать приложение, когда само видео начинает воспроизводиться?(после загрузки видео и после воспроизведения любой рекламы).
Код ключа «захвачен» в веб-просмотре.
Существует плагин интерфейса nativescript-webview, который позволяет вамчтобы получить информацию из веб-просмотра.Если это то, что требуется здесь, какой будет правильный код для этого плагина для регистрации, когда само видео начнет воспроизводиться?
Примеры репо этого плагина кажутся довольно конкретными и отличаются от того, что я имею в виду здесь.
Оригинальный вопрос:
У меня есть приложение Nativescript, использующее iOSи угловой.Я хотел бы, чтобы видео на YouTube воспроизводились в приложении, и я хочу иметь возможность управлять воспроизведением.Поэтому я хочу сделать такие вещи, как автозапуск программы программно и зарегистрировать, когда видео действительно воспроизводится.
Как я могу это сделать?
Подробнее:
Существует плагин nativescript-youtubeplayer, но я не могу использовать его здесь, потому что он требует ключ API и некоторые другие причины.
Я могу встроить базовый iframe в WebView с кодомкак это:
<WebView (loaded)="onWebViewLoaded($event)" requiresUserActionForMediaPlayback="false" [src]="urlSource"></WebView>
и в тс:
public urlSource= '<iframe src="https://www.youtube.com/embed/ZwO3PG-c5Cs?playsinline=1&autoplay=1&fs=0&controls=1&enablejsapi=1"></iframe>'
Это загружает видео.Но у него нет нормальных элементов управления YouTube (как, например, нет большой кнопки паузы на видео) - возможно, он переопределен веб-просмотром.Что еще более важно, он НЕ выполняет автозапуск , и он не дает мне способа программно получить доступ к информации iframe - поэтому, например, я не могу сказать, когда видеофактически играет против паузы.
API Iframe Player Youtube создан для этой цели, но как мне использовать его с Nativescript?Кажется, это требует манипуляций с dom так, как я раньше не видел.
Например, основной код для этого:
var player;
function onYouTubeIframeAPIReady() {
player = new YT.Player('player', {
height: '390',
width: '640',
videoId: 'M7lc1UVf-VE',
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
}
Но, что неудивительно, это вызывает ошибки, такие как «не могу найти имя YT».
Итак, как я могу встроить видео на YouTube в Nativescript с помощью iframe и управлять им, как если бы у меня было веб-приложение?