如何在Android Studio的WebView中点击youtube视频链接?

时间:2016-09-08 21:09:16

标签: android webview

我正在构建一个应用程序,webview加载youtube。 我希望当有人点击某个视频时,它会显示一个包含所点击链接的Toast。

我尝试过使用shouldOverrideUrlLoading,点击任意网址时都可以使用,但不能在youtube上使用。

问题是什么?我应该使用javascript吗?

感谢任何帮助。

我使用的代码如下 -

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    WebView mywebview = (WebView)findViewById(R.id.webView);
    WebSettings webSettings = mywebview.getSettings();
    webSettings.setJavaScriptEnabled(true);
    mywebview.loadUrl("https://www.youtube.com");
    mywebview.setWebViewClient(new WebViewClient()

    {

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {

            try {

                // do whatever you want to do on a web link click
               String hello = url;

                Toast.makeText(MainActivity.this,hello,
                        Toast.LENGTH_SHORT).show();

            } catch (Exception e) {
                e.printStackTrace();
            }
            return false;
        }


    });

2 个答案:

答案 0 :(得分:0)

试试这个

player.getVideoUrl():String

返回当前加载/播放视频的YouTube.com网址。

player.getVideoEmbedCode():String

返回当前加载/播放视频的嵌入代码。可以找到更多信息here

答案 1 :(得分:0)

我使用高级Web视图对此进行了排序 https://github.com/delight-im/Android-AdvancedWebView

并在按钮上单击调用webview.getOriginalUrl(),以便在页面加载并单击按钮时,它会显示包含该链接的Toast。