我正在编写音乐应用程序,我想整合YouTube。我已经这样做但视频无法播放,因此我想在WebView
启用Flash,以便我可以在自己的应用上观看YouTube上的视频。
youtube.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<WebView
android:id="@+id/webView1"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
youtube.java:
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
public class Youtube extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.youtube);
WebView wv = (WebView)findViewById(R.id.webView1);
wv.loadUrl("http://www.youtube.com");
wv.setWebViewClient(new CustomWebViewClient());
WebSettings webSettings = wv.getSettings();
wv.getSettings().setJavaScriptEnabled(true);
wv.getSettings().setPluginState(WebSettings.PluginState.ON);
}
}
CustomWebViewClient.java:
import android.webkit.WebView;
import android.webkit.WebViewClient;
class CustomWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
由于YouTube视频无法播放,因此WebView
无效。当我尝试使用WebView
播放YouTube时,有没有人知道什么是错的?
答案 0 :(得分:1)
要使Flash Player在WebView中运行,您需要在androidmanifest.xml中启用硬件加速。
<application android:hardwareAccelerated="true" ...>
您也可以使用
为WebView单独启用它mWebView.setLayerType(View.LAYER_TYPE_HARDWARE, null);