我正在尝试显示一个本地html文件包含播放视频的代码,并尝试在android webview中显示该html文件。
我使用以下代码播放视频:
WebViewLoadVideoActivity.java
//DECLARE webview variable outside of onCreate function so we can access it in other functions (menu)
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView webView = (WebView) findViewById(R.id.webView1);
WebSettings webSettings = webView.getSettings(); // Fetches the
// WebSettings
// import
WebViewClient webViewClient = new WebViewClient();
webView.setWebViewClient(webViewClient); // Enabling mp4
webSettings.setPluginsEnabled(true); // Allows plugins to run which are
// normally disabled in webView
webView.getSettings().setBuiltInZoomControls(true); // Allows the
// Android built in
// zoom control
webView.getSettings().setSaveFormData(true);
webView.getSettings().setLoadsImagesAutomatically(true);
webView.getSettings().setPluginsEnabled(true);
webView.getSettings().setLoadsImagesAutomatically(true);
webView.getSettings().setSupportMultipleWindows(true);
webView.getSettings().setPluginsEnabled(true);
webView.getSettings().setLightTouchEnabled(true);
webView.getSettings().setAllowFileAccess(true); // To allow file
// downloads/streams
// such as mp4, mpeg,
// and 3gp files
webView.getSettings().setJavaScriptEnabled(true); // Enables HTML
// Javascript to run
// in webview
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.getSettings().setSupportZoom(true); // Support the zoom feature
webView.getSettings().setSavePassword(true); // Allow users to save passwords in forms
webView.setWebViewClient(new WebViewClient() { // Opens web links clicked by user in the webview
@Override
public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) { // Handle the error
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
webView.loadUrl("file:///android_asset/test.html"); // test.html file from assets folder
//... Rest of activity code...
的test.html
<!DOCTYPE html>
<html>
<body>
<video width="320" height="240" controls="controls">
<source src="http://www.w3schools.com/html/movie.mp4" type="video/mp4" />
Your browser does not support the video tag.
</video>
</body>
</html>
问题区域:
当我们点击播放按钮时,Android webview或Android默认浏览器会在另一个视频视图中显示视频内容,我的要求是视频应该在同一个html页面内联打开,因此用户可以在视频播放或缓存期间导航到网页的其他页面。
研究领域:
我试过很多其他方法,比如
HTML5的视频标签
嵌入HTML标签
HTML的对象标签
其他视频播放器集成方式我到目前为止检查过但没有按照我的要求工作,
Flare Video
jplayer
请建议我任何适合我的要求的方式,我的要求非常简单,因为我想在html文件中播放视频,如同在android的webview小部件中内联。
先谢谢。
答案 0 :(得分:0)
您必须使用webView Custom类播放mp4视频