Воспроизвести видео Vimeo на Android, URL-адрес видео, содержащий iframe

Здравствуйте, я работаю над приложением для Android, в котором я хочу воспроизводить видео Vimeo, я получаю ответ от Api в json и играю видео с помощью веб-просмотра, и он воспроизводится хорошо, но веб-просмотр отображается очень маленьким, и воспроизводимое видео также мало проблемы

  1. Я хочу, чтобы ширина воспроизводимого видео соответствовала ширине устройства Android. Я могу получить его из Displaymetrics, но как установить iframe?
  2. Я хочу раздуть пользовательский вид медиа-контроллера для воспроизведения видео. Пользовательский контроллер, как значок паузы воспроизведения

Я получаю такой URL-ответ от API

 <iframe src="https://player.vimeo.com/video/video_id" width="640" height="360" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

на video_id я получаю идентификатор видео

Ниже приведен код, который я использовал

webView.setWebChromeClient(new WebChromeClient());
        webView.getSettings().setAllowFileAccess(true);
        webView.getSettings().setPluginState(WebSettings.PluginState.ON);
        webView.getSettings().setPluginState(WebSettings.PluginState.ON_DEMAND);
        webView.setWebViewClient(new WebViewClient());
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setLoadWithOverviewMode(true);
        webView.getSettings().setUseWideViewPort(true);

        String data_html=getexplore_list.get(pos).getVideo_url();

        webView.loadDataWithBaseURL("http://vimeo.com", data_html, "text/html", "UTF-8", null); 

Пожалуйста, предоставьте любое решение или ссылку, будем благодарны

2 ответа

Использовать стиль в HTML,

String url = "<iframe src=\"" + videoUrl + "\" style=\"border: 0; width: 100%; height: 95%; padding:0px; margin:0px\" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>";
mViewHolder.webView.getSettings().setJavaScriptEnabled(true);
String yourData = "<div id='made-in-ny'></div>\n" +
            "\n" +
            "<script src='https://player.vimeo.com/api/player.js'></script>\n" +
            "<script>\n" +
            "    var options = {\n" +
            "        id: 59777392,\n" +
            "        width: 540,\n" +
            "        loop: true\n" +
            "    };\n" +
            "\n" +
            "    var player = new Vimeo.Player('made-in-ny', options);\n" +
            "\n" +
            "    player.setVolume(0);\n" +
            "\n" +
            "    player.on('play', function() {\n" +
            "        console.log('played the video!');\n" +
            "    });\n" +
            "</script>";
mViewHolder.webView.loadData(yourData, "text/html; charset=utf-8", "UTF-8");

изменить идентификатор и ширину. это работает.

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