Как воспроизвести видео dailymotion внутри WebView на Android

Мне нужно воспроизвести видео из daylimotion в Android WebView, я пробовал несколько подходов, но не нашел рабочего решения. Видео, которое мне нужно воспроизвести, похоже на видео по следующему URL:

http://www.dailymotion.com/video/x1iepl4_blackfish-full-documentary_animals

Я был бы признателен за HTML для WebView для загрузки видео, работающего с daylimotion или любым другим подходом. Я уже успешно сделал то же самое для видео на yputube, но это решение не работает для dailymotion.

Заранее спасибо.


person Alejandro Casanova    schedule 01.06.2014    source источник


Ответы (3)


Dailymotion предоставляет SDK на основе WebView, который включает в себя все приемы, необходимые для простого воспроизведения видео:

dailymotion-sdk-android

README предоставляет простой пример интеграции

person Guillaume    schedule 06.06.2014

Просто решил проблему. Решение выглядит следующим образом:

WebSettings webSettings = this.wvVideo.getSettings();

final String mimeType = "text/html";
final String encoding = "UTF-8";
String html;

webSettings.setJavaScriptEnabled(true);         
webSettings.setPluginState(WebSettings.PluginState.ON);
webSettings.setUserAgentString(null);   
// Taken from the url
String videoId = "x1iepl4_blackfish-full-documentary_animals";
html = this.getHTMLDailyMotion(videoId);            
this.wvVideo.loadDataWithBaseURL("", html, mimeType, encoding, "");

Затем метод построения HTML выглядит следующим образом:

private String getHTMLDailyMotion(String videoId) {
    String html = "<iframe class=\"youtube-player\" "
            + "style=\"border: 0; width: 100%; height: 95%;"
            + "padding:0px; margin:0px\" "
            + "id=\"ytplayer\" type=\"text/html\" "
            + "src=\"http://www.dailymotion.com/embed/video/" + videoId
            + "?fs=0\" frameborder=\"0\" " + "allowfullscreen autobuffer "
            + "controls onclick=\"this.play()\">\n" + "</iframe>\n";

    return html;
}

Это показывает видео на весь экран.

person Alejandro Casanova    schedule 05.06.2014
comment
Я попробовал ваш код, он показывает видео, но оно не воспроизводится. индикатор выполнения циркулирует бесконечно. . . - person Usman Riaz; 25.07.2014

person    schedule
comment
Это не то, что я хочу сделать, это загрузит только всю страницу в WebView, мне просто нужно загрузить и воспроизвести видео. - person Alejandro Casanova; 05.06.2014
comment
@AlejandroCasanova привет, что ты для этого сделал? - person Arnold Brown; 16.04.2019