Узел WebKit и YouTube: хром не определен
Я разрабатываю приложение для Android
, iOS
, Mac OS
а также Windows
с помощью PhoneGap
а также Node-WebKit
, Это приложение имеет встроенный youtube
видео.
Эти youtube
видео работают нормально в моем Mobile
приложение (Android
/ iPhone
) с помощью PhoneGap
, но если я проверю это на моем Mac
(создание приложения с использованием grunt node-webkit builder
) Я получаю следующую ошибку:
Uncaught ReferenceError: chrome не определен
WWW-встраивать-player.js:184
Я попытался проверить эту строку, и есть такой код, как:
chrome.cast.requestSession(v(this.Lc,this)
Я встраиваю видео с помощью iframe:
<iframe src="http://www.youtube.com/embed/rjKRQYmi1Lk" frameborder="0" allowfullscreen="" ></iframe>
Кто-нибудь знает, как я могу решить это?
Спасибо!
1 ответ
Похоже, это связано с плагином Chromecast Chrome. Я предполагаю, что у вас есть
"webkit": {
"plugin": true
}
в вашем манифесте для flash, поэтому плагин Chromecast также загружается. Затем, когда он пытается взаимодействовать с плеером YouTube, он терпит неудачу.
Попробуйте удалить плагин Chromecast, чтобы узнать, решит ли это проблему. если так, то ваши варианты:
Удалите плагин Chromecast, нет способа загрузить только определенные плагины в node-webkit, о которых я знаю. Это может быть не лучшим решением, особенно если вы распространяете свое приложение.
Используйте другой метод для загрузки видео с YouTube. Я использую JavaScript Player API, и у меня нет никаких проблем. Вы можете найти мой пример здесь:
https://gist.github.com/octalmage/03a054bb27d597a9f095
И ссылка на API:
Загрузите ваш HTML через локальный веб-сервер. Эта ошибка, по-видимому, вызвана использованием протокола file://, поэтому загрузка HTML-кода с помощью локального веб-сервера может решить проблему. Лично я использую это со способом 2, чтобы обойти ограниченные ошибки воспроизведения ( https://cloudup.com/cUXiDgrYBOm), но я не уверен, что это решит вашу проблему в одиночку.
Изменить: Я только что понял, что я получаю эту ошибку с плагином webkit, установленным в false, попробуйте установить его в true! Видео работает для меня без каких-либо изменений, когда плагин webkit включен. Ошибка мигает до воспроизведения видео.