【问题标题】:Remove youtube vide title on android webview删除 android webview 上的 youtube 视频标题
【发布时间】:2012-08-16 12:03:35
【问题描述】:

我正在编写一个使用 WebView 播放来自 youtube 的视频的应用程序。播放没有问题,但视频有它自己的标题,这对我来说不是那么有用。怎么去掉?

【问题讨论】:

    标签: android webview youtube


    【解决方案1】:

    你可以有一个 javascript 文件来完成这个动作, 然后在 onPageFinished reference 上使用 loadUrl 方法注入它

    【讨论】:

      【解决方案2】:

      我有完整的 YouTube 视频定制 iframe 解决方案

      WebView webView;
          ProgressBar progressBar;
          ImageView back_btn;
      
          String video_url = "KK9bwTlAvgo", html = "";
      
      @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
      
              setContentView(R.layout.full_screen_youtube_video_screen);
      
              setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
      
              back_btn = (ImageView) findViewById(R.id.full_videoview_btn);
                  back_btn.setOnClickListener(new View.OnClickListener() {
                      @Override
                      public void onClick(View v) {
                          webView.loadData("", "text/html", "UTF-8");
                          finish();
                      }
                  });
      
                  webView = (WebView) findViewById(R.id.webView);
                     progressBar = (ProgressBar) findViewById(R.id.progressBar);
      
                  if (video_url.equalsIgnoreCase("")) {
                      finish();
                      return;
                  }
      
                  WebSettings ws = webView.getSettings();
                  ws.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
                  ws.setPluginState(WebSettings.PluginState.ON);
                  ws.setJavaScriptEnabled(true);
                  webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
                  webView.reload();
      
                  if (networkUtil.isConnectingToInternet(Act_VideoPlayer.this)) {
                      html = getHTML(video_url);
                  } else {
                      html = "" + getResources().getString(R.string.The_internet_connection_appears_to_be_offline);
                      CustomToast.animRedTextMethod(Act_VideoPlayer.this, getResources().getString(R.string.The_internet_connection_appears_to_be_offline));
                  }
      
                  webView.loadData(html, "text/html", "UTF-8");
      
                  WebClientClass webViewClient = new WebClientClass(progressBar);
                  webView.setWebViewClient(webViewClient);
                  WebChromeClient webChromeClient = new WebChromeClient();
                  webView.setWebChromeClient(webChromeClient);
          }
      
      
      
      
          @Override
          protected void onDestroy() {
              super.onDestroy();
              try {
                  webView.loadData("", "text/html", "UTF-8");
              } catch (Exception e) {
                  e.printStackTrace();
              }
          }
      
          @Override
          public void onBackPressed() {
              super.onBackPressed();
              try {
                  webView.loadData("", "text/html", "UTF-8");
                  finish();
              } catch (Exception e) {
                  e.printStackTrace();
              }
          }
      
      
          public class WebClientClass extends WebViewClient {
              ProgressBar ProgressBar = null;
      
              WebClientClass(ProgressBar progressBar) {
                  ProgressBar = progressBar;
              }
      
              @Override
              public void onPageStarted(WebView view, String url, Bitmap favicon) {
                  super.onPageStarted(view, url, favicon);
                  ProgressBar.setVisibility(View.VISIBLE);
              }
      
              @Override
              public void onPageFinished(WebView view, String url) {
                  super.onPageFinished(view, url);
                  ProgressBar.setVisibility(View.GONE);
              }
      
              @Override
              public boolean shouldOverrideUrlLoading(WebView view, String url) {
                  LogShowHide.LogShowHideMethod("webview-click :", "" + url.toString());
                  view.loadUrl(getHTML(video_url));
                  return true;
              }
          }
      
          public String getHTML(String videoId) {
              String html = "<iframe class=\"youtube-player\" " + "style=\"border: 0; width: 100%; height: 96%;"
                      + "padding:0px; margin:0px\" " + "id=\"ytplayer\" type=\"text/html\" "
                      + "src=\"http://www.youtube.com/embed/" + videoId
                      + "?&theme=dark&autohide=2&modestbranding=1&showinfo=0&autoplay=1\fs=0\" frameborder=\"0\" "
                      + "allowfullscreen autobuffer " + "controls onclick=\"this.play()\">\n" + "</iframe>\n";
              LogShowHide.LogShowHideMethod("video-id from html url= ", "" + html);
              return html;
          }
      

      【讨论】:

        猜你喜欢
        • 2017-12-23
        • 2012-05-17
        • 2012-12-14
        • 2013-11-12
        • 2020-11-17
        • 1970-01-01
        • 2013-07-13
        • 2014-02-10
        • 2017-11-17
        相关资源
        最近更新 更多