我正在构建一个WebView
应该播放视频的应用程序,该视频保存在本地。奇怪的是,视频播放器无法处理本地视频文件。它确实播放保存在服务器上的视频。
本地文件(html 和视频)保存在一个文件夹中assets/html_test
这是文件。
HTML
<div class="video-container">
<p>Server</p>
<video poster="video/star.png" controls>
<source src="http://broken-links.com/tests/media/BigBuck.m4v" />
</video>
</div>
<div class="video-container">
<p>local</p>
<video poster="video/star.png" controls>
<source src="BigBuck.m4v" />
</video>
</div>
Activity 中的 onCreate
WebView browser = (WebView) findViewById(R.id.browser);
WebSettings webSettings = browser.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setPluginState(WebSettings.PluginState.ON_DEMAND);
webSettings.setAllowFileAccessFromFileURLs(true);
browser.setWebChromeClient(new WebChromeClient());
browser.loadUrl("file:///android_asset/html_test/video.html");
第一个视频有效,第二个视频无效。我为 尝试了不同的值source
,但它们都不适合我:
<source src="BigBuck.m4v" />
<source src="file:///android_asset/html_test/BigBuck.m4v" />
不确定这是否相关,但只要我按下播放键,就会logcat
显示:
01-07 12:19:18.073: E/MediaPlayer(32542): error (1, -2147483648)
01-07 12:19:18.073: E/MediaPlayer(32542): Error (1,-2147483648)
我不知道这里有什么问题。任何帮助将非常感激。