小编典典
我回答这个主题,以防万一有人阅读它并对结果感兴趣。可以在WebView中查看视频元素(视频html5标签),但是我必须说我不得不处理几天。到目前为止,我必须遵循以下步骤:
-查找正确编码的视频
-初始化WebView时,设置JavaScript,插入WebViewClient和WebChromeClient。
url = new String(“ http://broken-links.com/tests/video/”);
mWebView =(WebView)findViewById(R.id.webview);
mWebView.setWebChromeClient(chromeClient);
mWebView.setWebViewClient(wvClient);
mWebView.getSettings()。setJavaScriptEnabled(true);
mWebView.getSettings()。setPluginState(PluginState.ON);
mWebView.loadUrl(url);
-处理WebChromeClient对象中的onShowCustomView。
@Override
public void onShowCustomView(View view, CustomViewCallback callback) {
super.onShowCustomView(view, callback);
if (view instanceof FrameLayout){
FrameLayout frame = (FrameLayout) view;
if (frame.getFocusedChild() instanceof VideoView){
VideoView video = (VideoView) frame.getFocusedChild();
frame.removeView(video);
a.setContentView(video);
video.setOnCompletionListener(this);
video.setOnErrorListener(this);
video.start();
}
}
}
-处理视频的onCompletion和onError事件,以返回到Web视图。
public void onCompletion(MediaPlayer mp) {
Log.d(TAG, "Video completo");
a.setContentView(R.layout.main);
WebView wb = (WebView) a.findViewById(R.id.webview);
a.initWebView();
}
但是现在我应该说还有一个重要的问题。我只能播放一次。第二次单击视频分发器(海报或某些播放按钮)时,它什么也没做。
我也希望视频在WebView框架内播放,而不是打开Media Player窗口,但这对我来说是个次要问题。
希望对您有所帮助,也要感谢您的任何评论或建议。
Saludos,terrícolas。
2020-05-10