Android: playing youtube video on Webview
13,170
try this
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");
also set in manifist file android:hardwareAccelerated="true"
<application
android:allowBackup="true"
android:hardwareAccelerated="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
</application>
Related videos on Youtube
Comments
-
justo about 2 years
i've a problem to playing youtube video on a WebView. It's all day i reading question and answer on how to do this, but it doesn't work. I've already set the Manifest and this is the code i'm using
mWebview.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return false; } }); mWebview.getSettings().setPluginState(WebSettings.PluginState.ON); mWebview.setWebChromeClient(new WebChromeClient()); mWebview.getSettings().setJavaScriptEnabled(true); mWebview.getSettings().setAppCacheEnabled(true); mWebview.setInitialScale(1); mWebview.getSettings().setLoadWithOverviewMode(true); mWebview.getSettings().setUseWideViewPort(true); //webSettings.setLoadsImagesAutomatically(true); //webSettings.setSupportZoom(false); mWebview.loadUrl("https://www.youtube.com/embed/MYVIDEOID");
and what's happen is this i can click the play button the timer start but i can see nothing.
EDIT: The problem seems on the emulator and not on real device, check the comment for the answer.