logo

stormzhang

做好现在的事!

Blog About GitHub Friends

Android WebView播放视频问题

版权声明:本文为 stormzhang 原创文章,可以随意转载,但必须在明确位置注明出处!!!

此次的方案用到WebView,而且其中会有视频嵌套,在默认的WebView中直接播放视频会有问题,而且不同的SDK版本情况还不一样,网上搜索了下解决方案,在此记录下.

webView.getSettings.setPluginState(PluginState.ON);
webView.setWebChromeClient(new WebChromeClient());

然后在webView的Activity配置里面加上:

android:hardwareAccelerated="true"

以上可以正常播放视频了,但是webview的页面都finish了居然还能听到视频播放的声音,于是又查了下发现webview的 onResume方法可以继续播放,onPause可以暂停播放, 但是这两个方法都是在Added in API level 11添加的,所以需要用反射来完成。

停止播放:在页面的onPause方法中使用:

webView.getClass().getMethod("onPause").invoke(webView,(Object[])null);

继续播放:在页面的onResume方法中使用:

webView.getClass().getMethod("onResume").invoke(webView,(Object[])null);

这样就可以控制视频的暂停和继续播放了。


stormzhang

03/23/2014


欢迎关注我的公众号:AndroidDeveloper


推荐一个用了一年多的理财「友金所」,小道消息、MacTalk、可能吧等公号均推荐过,绝对靠谱,新手年化收益 12% 及 166 元红包。点这里开始投资


上一篇:Best Practices for Using Alpha

下一篇:Android SwipeRefreshLayout