亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android編程使WebView支持HTML5 Video全屏播放的解決方法

2020-04-11 11:20:13
字體:
來源:轉載
供稿:網友

本文實例講述了Android編程使WebView支持HTML5 Video全屏播放的解決方法。分享給大家供大家參考,具體如下:

1)需要在AndroidManifest.xml文件中聲明需要使用HardwareAccelerate, 可以細化到Activity級別,如果不需要的View可以聲明不要用加速,但是需要在代碼中做,具體如下:

a. 如果要聲明整個應用都要加速:

復制代碼 代碼如下:
<application ... android:hardwareAccelerated ="true">

b. 如果要在Activity中聲明,則:
復制代碼 代碼如下:
<activity ... android:hardwareAccelerated="true" >
還可以更細化到Window, getWindow.setFlags(
         WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);

c. 如果application或者activity都申明了要硬件加速,但是為了某些原因(比如省電?),一些View不需要硬件加速的話,

復制代碼 代碼如下:
view.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

2)可以說挺奇怪的是,需要在AndroidManifest.xml文件中用上<use-sdk></use-sdk>標簽,而且如果是空的還不行,必須寫上targetSDK或者minSDK,但是我試驗過,不管寫版本是多少都沒有關系。。。理論上說,Android應該是從3.0( API Level 11)開始可以對2D渲染加速,但是我把targetSDK設置為5都可以使用的,但是這個標簽不寫還不行。

一般來說,上面的操作做了,就可以使用video標簽播放視屏了,如果要支持全屏,還需要做一點操作:

1)給webview一個WebChromeClient對象,這個WebChromeClient對象需要實現onShowCustomView和onHideCustomView方法,下面是一個實現例子:

@Overridepublic void onShowCustomView(View view, CustomViewCallback callback) {   if (myCallback != null) {      myCallback.onCustomViewHidden();      myCallback = null ;      return;   }   long id = Thread.currentThread().getId();   WrtLog. v("WidgetChromeClient", "rong debug in showCustomView Ex: " + id);   ViewGroup parent = (ViewGroup) mWebView.getParent();   String s = parent.getClass().getName();   WrtLog. v("WidgetChromeClient", "rong debug Ex: " + s);   parent.removeView( mWebView);   parent.addView(view);   myView = view;   myCallback = callback;   chromeClient = this ;}private View myView = null;private CustomViewCallback myCallback = null;public void onHideCustomView() {   long id = Thread.currentThread().getId();   WrtLog. v("WidgetChromeClient", "rong debug in hideCustom Ex: " + id);   if (myView != null) {      if (myCallback != null) {          myCallback.onCustomViewHidden();          myCallback = null ;      }      ViewGroup parent = (ViewGroup) myView.getParent();      parent.removeView( myView);      parent.addView( mWebView);      myView = null;   }}

好吧,這個寫法和網上很多寫法不一樣,網上大部分的例子都是onShowCustomView方法接收到的view是一個VideoView對象,而這里是一個找不到的HTML5VideoFullScreen的VideoSurfaceView子類,而且這個子類還是一個private的子類,在外面根本沒有辦法訪問到,android.jar中也沒有HTML5VideoFullScreen這個類。如果想要在application中訪問到這個類,那么需要把<android-SDK-path>/platforms/<android-version>/data/layoutlib.jar這個包加到buildpath中,而且從android-14,也就是android4.0以后才這樣,也就是說,網上說的那個方法在android3.0時代是可以用的,android4.0以后就不行了,我用的是android4.0.3。

其實不管是什么版本,這個段代碼的大概意思就是,在onShowCustomView方法中,將獲取到的view放到當前Activity的最上方,在onHideCustomView中,將之前的view隱藏或者刪除,將原來被覆蓋的webview放回來,并結束播放,否在會報MediaPlayer IllegalStatusException, 而且還是Native method,根本沒法調試了。

上面代碼是片段,很多朋友看了也不能解決問題,完整實例代碼代碼點擊此處本站下載。

可以下載下來,用eclipse導入工程,把樣例視頻放到sdcard根部目錄下,從系統角度看就是/mnt/sdcard即可。

效果如圖:

全屏前:

全屏后:

希望本文所述對大家Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日产日韩在线亚洲欧美| 在线观看视频99| 国产精品自拍小视频| 69视频在线免费观看| 亚洲免费成人av电影| 日韩国产欧美精品一区二区三区| 国产精品白嫩初高中害羞小美女| 亚洲一区二区三区在线免费观看| 日韩在线播放一区| 欧美午夜性色大片在线观看| 国产精品女主播| 国产精品一区专区欧美日韩| 亚洲一区二区久久久久久久| 亚洲欧美中文日韩在线v日本| 亚洲国产精品免费| 国模gogo一区二区大胆私拍| 成人在线视频网| 日韩电影中文字幕| 亚洲人成绝费网站色www| 国产精品久久久久久久久久小说| 色哟哟网站入口亚洲精品| 国产色综合天天综合网| 亚洲欧美综合另类中字| 国产成人精品一区二区三区| 国产精品草莓在线免费观看| 国产精品一区二区三区成人| 揄拍成人国产精品视频| 欧美日韩在线视频首页| 久久久久久午夜| 欧美精品福利在线| 亚洲片在线观看| 色小说视频一区| 久久精品成人一区二区三区| 成人性生交大片免费看视频直播| 91色精品视频在线| 欧美一级视频免费在线观看| 亚洲最新av在线| 91在线免费视频| 亚洲女人被黑人巨大进入al| 亚洲午夜精品视频| 国产精品爽黄69天堂a| 国产精品久久久久久久久久三级| 性欧美xxxx| 久久免费国产视频| 欧美高清电影在线看| 亚洲韩国青草视频| 亚洲激情视频网站| 日韩a**站在线观看| 久久99久国产精品黄毛片入口| 久久久91精品国产| 亚洲精品电影在线观看| 国产亚洲精品日韩| 日韩av在线免费观看一区| 欧美成人精品不卡视频在线观看| 久久中文精品视频| 亚洲精品自拍偷拍| 奇门遁甲1982国语版免费观看高清| xxxxx成人.com| 国产精品中文久久久久久久| 亚州成人av在线| 久久久久久久久久久成人| 欧美视频在线观看免费| 精品久久久一区二区| 亚洲经典中文字幕| 亚洲永久免费观看| 欧美精品一本久久男人的天堂| 精品毛片三在线观看| 夜夜嗨av一区二区三区免费区| 一区二区三区久久精品| 欧美成人在线网站| 亚洲精品免费av| 亚洲国产私拍精品国模在线观看| 日韩av大片在线| 国产精品黄色影片导航在线观看| 精品国产一区二区三区久久久狼| 成人网页在线免费观看| 欧美有码在线观看视频| 欧美肥老妇视频| 中文字幕亚洲无线码a| 国产精品入口日韩视频大尺度| 久久精品国产久精国产思思| 欧美丝袜一区二区| 久久亚洲国产成人| 久久精品国产成人精品| yw.139尤物在线精品视频| 91亚洲精品在线| 精品调教chinesegay| 欧美激情国产日韩精品一区18| 亚洲第一精品久久忘忧草社区| 黄色一区二区在线| 国产欧美精品在线播放| 欧美最猛性xxxx| 在线观看国产成人av片| 欧美麻豆久久久久久中文| 国产精品主播视频| 欧美高清视频在线播放| 中日韩美女免费视频网址在线观看| 亚洲成人精品av| 日韩精品高清在线观看| 日韩中文理论片| 成人淫片在线看| 午夜欧美大片免费观看| 精品福利在线视频| 精品久久香蕉国产线看观看亚洲| 狠狠躁天天躁日日躁欧美| 911国产网站尤物在线观看| 国产精品一区久久久| 日韩av电影手机在线| 亚洲国产精品一区二区三区| 91av免费观看91av精品在线| 久久久久久这里只有精品| 美女国内精品自产拍在线播放| 国产美女久久精品香蕉69| 黑人巨大精品欧美一区免费视频| 成人黄色免费网站在线观看| 日韩欧美亚洲国产一区| 成人女保姆的销魂服务| 日韩综合视频在线观看| 国产在线观看精品一区二区三区| 国内成人精品视频| 国产手机视频精品| 国产99久久精品一区二区永久免费| 久久99久久亚洲国产| 亚洲一区二区三| 日韩激情在线视频| 一个色综合导航| 欧美电影免费观看高清完整| 亚洲性无码av在线| 日韩亚洲在线观看| 久久久久久久国产| 日韩成人在线播放| 日韩影视在线观看| 尤物yw午夜国产精品视频| 九九精品在线播放| 成人激情在线播放| 欧美另类极品videosbestfree| 亚洲电影天堂av| 亚洲天堂成人在线| 久久久久久久999| 亚洲xxxxx性| 欧美午夜精品久久久久久浪潮| 国产成人久久精品| 欧美日韩另类视频| 国产成人黄色av| 久久视频在线看| 日本精品久久久久久久| 久久在线视频在线| 国产区亚洲区欧美区| 97成人精品区在线播放| 日韩69视频在线观看| 国产精品v片在线观看不卡| 亚洲成av人乱码色午夜| 91精品在线国产| 久久久久久久久久久国产| 韩国国内大量揄拍精品视频| 亚洲美女av在线播放| 国产精品久久久av久久久| 国产精品av在线播放| 日韩欧美精品免费在线| 午夜欧美不卡精品aaaaa| 欧美激情亚洲综合一区| 2025国产精品视频| 4p变态网欧美系列| 国产精品露脸自拍|