怎么在webview中正常播放html的视频

红框内为html的视频 在小屏手机里webview只显示了一般的htnl文件 我现在是想让html的视频能够点击全屏播放
在网上查的例子 添加的代码但是不显示
private View xCustomView;
@ViewInject(R.id.video_view)
private FrameLayout videoview;// 全屏时视频加载view
@ViewInject(R.id.study_details_video)
WebView study_details_video;
private WebChromeClient.CustomViewCallback xCustomViewCallback;
private void palyVideo(String zipPath) {
finshBtn.setVisibility(View.INVISIBLE);
againBtn.setVisibility(View.INVISIBLE);
i = Integer.parseInt(learningCoursewareDetailsBeanList.get(0).getLearningTime());
handler.postDelayed(runnable, time);
study_details_video.getSettings().setJavaScriptEnabled(true);
study_details_video.getSettings().setPluginState(WebSettings.PluginState.ON);
study_details_video.getSettings().setPluginsEnabled(true);//可以使用插件
study_details_video.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
study_details_video.getSettings().setAllowFileAccess(true);
study_details_video.getSettings().setBuiltInZoomControls(true);// 隐藏缩放按钮
study_details_video.getSettings().setDefaultTextEncodingName("UTF-8");
study_details_video.getSettings().setUseWideViewPort(true);// 可任意比例缩放
study_details_video.getSettings().setLoadWithOverviewMode(true);
study_details_video.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);// 排版适应屏幕
study_details_video.setWebViewClient(new xWebViewClientent());
study_details_video.setWebChromeClient(new DefaultWebChromeClient());
study_details_video.loadUrl(zipPath);
}
private class DefaultWebChromeClient extends WebChromeClient {
private Bitmap xdefaltvideo;
private View xprogressvideo;
@Override//开启全屏
public void onShowCustomView(View view, CustomViewCallback callback) {
super.onShowCustomView(view, callback);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
study_details_video.setVisibility(View.GONE);
//如果一个视图已经存在,那么立刻终止并新建一个
if (xCustomView != null) {
callback.onCustomViewHidden();
return;
}
videoview.addView(view);
xCustomView = view;
xCustomViewCallback = callback;
videoview.setVisibility(View.VISIBLE);
}
@Override//视频播放退出全屏会被调用的
public void onHideCustomView() {
super.onHideCustomView();
if (xCustomView == null)//不是全屏播放状态
return;
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
xCustomView.setVisibility(View.GONE);
videoview.removeView(xCustomView);
xCustomView = null;
videoview.setVisibility(View.GONE);
xCustomViewCallback.onCustomViewHidden();
study_details_video.setVisibility(View.VISIBLE);
}
@Override//视频加载添加默认图标
public Bitmap getDefaultVideoPoster() {
if (xdefaltvideo == null) {
xdefaltvideo = BitmapFactory.decodeResource(
getResources(), R.drawable.videoicon);
}
return xdefaltvideo;
}
//视频加载时进程loading
@Override
public View getVideoLoadingProgressView() {
if (xprogressvideo == null) {
LayoutInflater inflater = LayoutInflater.from(StudyDetailsActivity.this);
xprogressvideo = inflater.inflate(R.layout.video_loading_progress, null);
}
return xprogressvideo;
}
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
if (inCustomView()) {
hideCustomView();
return true;
} else {
study_details_video.loadUrl("about:blank");
StudyDetailsActivity.this.finish();
}
}
return true;
}
/**
* 判断是否是全屏
*
* @return
*/
public boolean inCustomView() {
return (xCustomView != null);
}
/**
* 全屏时按返加键执行退出全屏方法
*/
public void hideCustomView() {
new DefaultWebChromeClient().onHideCustomView();
}
/**
* 处理各种通知、请求等事件
*
* @author
*/
public class xWebViewClientent extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
Log.e("webviewtest", "shouldOverrideUrlLoading: " + url);
view.loadUrl(url);
return true;
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
Log.e("webviewtest", "shouldOverrideUrlLoading: " + url);
}
}
现在情况是点击视频无反应,我想获取html里的视频地址 也获取不到 求解
最后上个我的html的内容截图

...全文
相关推荐
Android webview全屏播放HTML video
http://blog.csdn.net/zrzlj/article/details/8050633的样例代码,解压以后,用eclipse导入工程,将例子视频放在sdcard下面即可
Android如何让WebView中的HTML5页面实现视频全屏播放
前言 本文主要是将最近工作中遇到的一个问题进行总结分享,主要介绍的是如何让WebView中H5页面全屏播放视频。关于这个问题,做一下简单分析,希望对大家有所帮助,下面话不多说了,来看看详细的介绍吧。 效果图 运行效果 其实很简单,就是配置问题。关键地方配好了,基本没什么问题了。 硬件加速 设置WebView 在清单需要配置的AndroidManifest.xml <application android:allowBackup=true android:icon=@mipmap/ic_launcher android:label=@string/app_name
webview全屏播放视频demo
Android webview全屏播放html5的视频,采用android studio 架构,项目实测通过
HTML5视频全屏webview兼容4.4以上
原作者Cristian Perez cprcrack https://github.com/cprcrack/VideoEnabledWebView
Android应用源码之webview支持html5视频播放实例.zip
Android应用源码,安卓学习设计应用源代码,可供学习及设计参考。


