我想在webview中使用flash播放YouTube视频。
例如,当WebView加载youtube.com并点击视频时,它将完全播放它而不受任何限制。目前我得到一个灰色的视频与破碎的flash播放器图片。
我试着添加:
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setPluginState( WebSettings.PluginState.ON );
我还将android:hardwareAccelerated="true"
添加到Manifest XML中,没有任何运气。
我在我的Nexus 7上运行这个,不知道这是否有区别。我找遍了互联网的每一个角落,还没有找到解决办法。
WebView mWebView;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);
mWebView = (WebView) findViewById(R.id.webview);
mWebView.setWebViewClient(new ClientOP());
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setPluginState( WebSettings.PluginState.ON );
mWebView.loadUrl("http://www.youtube.com");
mWebView.getSettings().setLoadWithOverviewMode(true);
mWebView.getSettings().setUseWideViewPort(true);
mWebView.getSettings().setBuiltInZoomControls(true);
mWebView.setVerticalScrollBarEnabled(false);
mWebView.setHorizontalScrollBarEnabled(false);
}
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
mWebView.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
private class ClientOP extends WebViewClient {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
System.out.println("URL: " + url);
view.loadUrl(url);
return true;
}
}
Android不再支持flash了。为什么不使用新的Youtube api呢?https://developers.google.com/youtube/android/player/