2016-09-08 14 views
1

私はアプリを構築しており、webviewはyoutubeを読み込みます。 誰かがビデオをクリックすると、クリックされたリンクを含むトーストが表示されます。Android StudioのWebViewでクリックしてyoutube動画のリンクを取得する方法は?

私はshouldOverrideUrlLoadingを使用しようとしましたが、YouTube上ではなくURL上をクリックすると動作します。

何が問題なのですか?私は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; 
     } 


    }); 

答えて

0

私は、ページのロード時にボタンのクリックで高度なWeb閲覧 https://github.com/delight-im/Android-AdvancedWebView

とwebview.getOriginalUrlを呼び出す()を使用してこれをソートして、ボタンをクリックして、それがリンクを含むトーストを表示します。

+0

YouTubeの検索ページからボタンのクリックを傍受するにはどうすればよいですか? –

0

この

player.getVideoUrl():String 

を試してみて、現在ビデオを再生/ロード用YouTube.comのURLを返します。

player.getVideoEmbedCode():String 

現在ロード中または再生中のビデオの埋め込みコードを返します。詳細はhereをご覧ください。

+0

これはjavascript権限として使用する必要がありますか?それが問題でないなら、私に例を挙げてください。 –

関連する問題