Узел 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, чтобы узнать, решит ли это проблему. если так, то ваши варианты:

  1. Удалите плагин Chromecast, нет способа загрузить только определенные плагины в node-webkit, о которых я знаю. Это может быть не лучшим решением, особенно если вы распространяете свое приложение.

  2. Используйте другой метод для загрузки видео с YouTube. Я использую JavaScript Player API, и у меня нет никаких проблем. Вы можете найти мой пример здесь:

    https://gist.github.com/octalmage/03a054bb27d597a9f095

    И ссылка на API:

    https://developers.google.com/youtube/js_api_reference

  3. Загрузите ваш HTML через локальный веб-сервер. Эта ошибка, по-видимому, вызвана использованием протокола file://, поэтому загрузка HTML-кода с помощью локального веб-сервера может решить проблему. Лично я использую это со способом 2, чтобы обойти ограниченные ошибки воспроизведения ( https://cloudup.com/cUXiDgrYBOm), но я не уверен, что это решит вашу проблему в одиночку.

Изменить: Я только что понял, что я получаю эту ошибку с плагином webkit, установленным в false, попробуйте установить его в true! Видео работает для меня без каких-либо изменений, когда плагин webkit включен. Ошибка мигает до воспроизведения видео.

https://cloudup.com/c6VyHbIyyez

Другие вопросы по тегам