android 使用WebView 支持播放優酷視頻,土豆視頻

看了不少文章和所謂的解決android WebView播放優酷,土豆等視頻的辦法,都是什麼 setPluginsEnabled,在android 4.x以後都很差使,壓根就沒這函數,由於android 4.x 都去除了flash的支持。就這東西弄的我折騰了半天時間,如今的網站都是採集複製,浪費時間。java

只有本身操刀了,android

下面給出個人解決辦法,web

1. 修改AndroidManifest.xmlide

在Application節點上增長 函數

android:hardwareAccelerated="true"

固然你也能夠在WebView所在的Activity節點上增長此屬性佈局

2. 在WebView的佈局XML上增長  android:layerType="hardware"網站

<WebView
        android:id="@+id/newsContent"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layerType="hardware" # 這裏必定要選擇hardware,使用硬件。
        >

3. 在Java代碼中設置相應屬性spa

WebSettings ws=newsContent.getSettings();
ws.setJavaScriptEnabled(true);
ws.setAllowFileAccess(true);
ws.setDatabaseEnabled(true);
ws.setDomStorageEnabled(true);
ws.setSaveFormData(false);
ws.setAppCacheEnabled(true);
ws.setCacheMode(WebSettings.LOAD_DEFAULT);
ws.setLoadWithOverviewMode(false);//<==== 必定要設置爲false,否則有聲音沒圖像
ws.setUseWideViewPort(true);


4.接下來解決播放的視頻沒法中止的問題插件

@Override
protected void onResume() {
   super.onResume();
   //恢復播放
   webView.resumeTimers();
}

@Override
protected void onPause() {
   super.onPause();
   //暫停播放
   webView.pauseTimers();
}

@Override
protected void onDestroy() {
   super.onDestroy();
   //必定要銷燬,不然沒法中止播放
   webView.destroy();
}


OK,就這樣,android 4.x 以上播放就沒什麼問題了code


。。。。等等

還忘了,若是WebView打開的網頁 包含有分享的 連接,須要分享的連接是  通用的連接即,<iframe src="http://play.youku.com/xjlkdfjaklfjdsa"  /> ,若直接使用 embed 的 不會播放,仍是那個緣由,android不支持flash插件播放,

相關文章
相關標籤/搜索