如何在Android上的webView中显示YouTube视频

时间:2017-06-15 11:00:06

标签: android video webview youtube android-videoview

我希望在我的应用中显示 YouTube视频,为此我想使用WebView
使用WebView并显示我在下面编写代码的视频:

            WebSettings settings = content_newsWebView.getSettings();
            content_newsWebView.setWebChromeClient(new WebChromeClient());
            content_newsWebView.getSettings().setDomStorageEnabled(true);
            content_newsWebView.getSettings().setAppCacheEnabled(true);
            content_newsWebView.getSettings().setAppCachePath(getApplicationContext().getFilesDir().getAbsolutePath() + "/cache");
            content_newsWebView.getSettings().setDatabaseEnabled(true);
            content_newsWebView.getSettings().setDatabasePath(getApplicationContext().getFilesDir().getAbsolutePath() + "/databases");
            settings.setPluginState(WebSettings.PluginState.ON);
            content_newsWebView.getSettings().setJavaScriptEnabled(true);
            settings.setDefaultTextEncodingName("utf-8");
            content_newsWebView.loadData(response.body().getData().getDescription(), "text/html; charset=UTF-8", null);

运行应用程序时,显示视频但不是响应
给我看视频最大!请参阅此图片以了解我的意思:Image Link

我希望在我的应用中显示响应式Youtube 视频。

我通过此 Json

从服务器获取视频链接
> "<p><iframe frameborder=\"0\"
> src=\"https://www.youtube.com/embed/NcoBDgJ3ZBw\"
> style=\"width:100%;min-height: 400px;\"></iframe></p>\n\n<p>The Harry
> Potter star plays an Israeli backpacker in the upcoming thriller from
> <a
> href=\"http://example.com/Celebrities/276442/greg_mclean\"><strong>Greg McLean</strong></a> (<a
> href=\"http://example.com/Movies/94393/the_belko_experiment\"><strong>The
> Belko Experiment</strong></a>, <a
> href=\"http://example.com/Movies/1397/wolf_creek\"><strong>Wolf
> Creek</strong></a>).</p>\n\n<p><a
> href=\"http://example.com/Celebrities/10139/daniel_radcliffe\"><strong>Radcliffe</strong></a>,
> 27, is a young adventurer going on a dream trip into the Amazonian
> rain forest along with two friends and a mysterious guide named
> Karl.</p>\n\n<p>Abandoned by their guide among the dangerous jungle
> creatures, Yossi (<a
> href=\"http://example.com/Celebrities/10139/daniel_radcliffe\"><strong>Radcliffe</strong></a>)
> and his friends are left with little means to survive, ending up in
> psychological battles with themselves.</p>\n\n<p>Starring <a
> href=\"http://example.com/Celebrities/64592/alex_russell\"><strong>Alex Russell</strong></a>, <a
> href=\"http://example.com/Celebrities/53829/thomas_kretschmann\"><strong>Thomas
> Kretschmann</strong></a> and <strong>Yasmin Kassim</strong>, Jungle
> premiers at Melbourne International Film Festival on Aug. 3.</p>\n"

如何在我的应用程序中显示响应式youtube 视频?

请帮助我们,我真的需要你的帮助。

1 个答案:

答案 0 :(得分:0)

请尝试以下代码:更改字符串中的视频网址。

String frameVideo = "<html><body>Video From YouTube<br><iframe width=\"420\" height=\"315\" src=\"https://www.youtube.com/embed/47yJ2XCRLZs\" frameborder=\"0\" allowfullscreen></iframe></body></html>";

    WebView displayYoutubeVideo = (WebView) findViewById(R.id.mWebView);
    displayYoutubeVideo . setWebViewClient ( New  WebViewClient () {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            return false;
        }
    });
    WebSettings webSettings = displayYoutubeVideo . getSettings ();
    webSettings.setJavaScriptEnabled(true);
    displayYoutubeVideo.loadData(frameVideo, "text/html", "utf-8");