4

ブラウザからYouTube Webサイトにアクセスしてビデオの再生を開始したときと同じように、WebビューからYouTubeビデオを再生することは可能ですか?ビデオをフルスクリーンで再生します。

これまでの私のコードは次のとおりです。

webView = (WebView) v.findViewById(R.id.webview);
webView.setWebChromeClient(new WebChromeClient()); 
webView.setWebViewClient(new WebViewClient()); 
webView.getSettings().setJavaScriptEnabled(true); 
webView.getSettings().setPluginState(WebSettings.PluginState.ON);
webView.setWebChromeClient(new WebChromeClient() {
        public void onShowCustomView(View view, WebChromeClient.CustomViewCallback callback) {
            super.onShowCustomView(view, callback);
            if (view instanceof FrameLayout) {
                final FrameLayout frame = (FrameLayout) view;
                if (frame.getFocusedChild() instanceof VideoView) {
                    // get video view

                    VideoView video = (VideoView) frame.getFocusedChild();
                    Uri mUri = null;
                    try {
                        Field mUriField = VideoView.class.getDeclaredField("mUri");
                        mUriField.setAccessible(true);
                        mUri = (Uri) mUriField.get(video);
                        Log.d(TAG, "the uri is "+mUri.toString());
                        Intent i = new Intent();
                        i.setData(mUri);
                        i.setAction(Intent.ACTION_VIEW);
                        startActivity(i);
                    } catch (Exception e) {
                        e.printStackTrace();
                    }

                }
            }
        }
    });

webView.loadUrl("www.youtube.com");

ユーザーが以前ではなく、webview 内の YouTube ビデオで「再生」をクリックしたときにのみ、YouTube アプリを起動したいと考えています。

チャンネル全体を表示する必要があるため、ユーザーは、ブラウザ アプリケーションから YouTube Web サイトにアクセスするのと同じように、再生したいビデオを選択できます。

編集:再生クリックを処理するために onShowCustomView() メソッドを追加したことが示唆されているように、いくつかの uri を取得しました。フルスクリーンの videoview でビデオを再生するにはどうすればよいですか?

4

1 に答える 1

2
webView = (WebView) findViewById( R.id.webview_1 );

String play= "<html><body>Youtube <br> <iframe class=\"youtube-player\" type=\"text/html\" width=\"600\" height=\"300\" src=\"http://www.youtube.com/embed/bIPcobKMB94\" frameborder=\"0\"></body></html>"

webView.loadData(play, "text/html", "utf-8");

また、見ることができます..
YouTubeビデオがWebViewで再生されない - Android

于 2012-12-30T08:00:35.090 に答える