Веб-просмотр Android jwplayer7 не может прочитать свойство jwplayer.volume со значением null

У меня есть приложение, которое использует веб-просмотр для запуска HTML-кода, который загружает JWP7 и выдает ошибку Uncaught TypeError: не удается прочитать свойство jwplayer.volume со значением null Одна и та же страница отлично загружается в мобильных и настольных браузерах. Я попытался добавить в javascript html после вызова jwplayer.js и перед настройкой следующий код:

if (typeof jwplayer.volume == "undefined" || typeof jwplayer.volume == null )
    jwplayer.volume = 10;

Я вижу новое свойство тома с помощью настольного/мобильного браузера, но оно не меняет TypeError в веб-просмотре, вероятно, потому, что TypeError выдается при запуске сценария jwplayer.js, прежде чем он достигнет моей проверки javascript.

Когда я использую JWP6, все работает отлично.

Любые предложения о том, как это исправить?


person ohadsas    schedule 09.02.2016    source источник
comment
Привет, охадсы. Вы проверили мой ответ? Я столкнулся с той же проблемой и решил ее, включив доступ к LocalStorage.   -  person ashazar    schedule 22.03.2016
comment
Привет @ashazar Я еще не проверял, проверю через несколько дней! БЛАГОДАРНОСТЬ   -  person ohadsas    schedule 22.03.2016
comment
У меня тоже была эта проблема Эта ссылка может вам помочь   -  person Ayda Shahmoradi    schedule 21.05.2017


Ответы (2)


Я проверил код jwplayer.js. И увидел, что он считывает последние настройки Volume (jwplayer.volume) и Mute (jwplayer.mute) из LocalStorage; а не из куки. (Возможно, JWPlayer 6 использовал файлы cookie.)

Итак, вам нужно включить доступ к LocalStorage в вашем WebView; как вы делаете для JavaScript.

Пример кода ниже.

WebView webView = (WebView) findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setDomStorageEnabled(true); // This will allow access
webView.setWebViewClient(new WebViewClient());
/* WebView.setWebContentsDebuggingEnabled(true);  // This is to inspect your WebView from desktop Chrome. (>= API 19) You may not want to include this in production. */
webView.loadUrl(url);
person ashazar    schedule 18.03.2016
comment
Отличный ответ, я проверил это сам и работает как шарм! Спасибо - person Fernando Jascovich; 21.03.2017
comment
ты спас мой день - person Hoang Trung; 30.08.2017
comment
Ты тоже спас мою - person Cícero Moura; 02.02.2021

JW Player не поддерживает использование веб-плеера в веб-просмотре Android или iOS; однако для поддержки видео в приложении доступны собственные мобильные SDK: developer.jwplayer.com/android-sdk< /а>

person Josie Keller    schedule 11.02.2016