我是android的新手,如果我的问题很琐碎,请提前抱歉,但是我找不到任何解决方案。
我正在处理一个android项目,我有一个WebView
,它显示了Assets目录中的网页,我的网页具有如下所示的视频元素
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>video player</title>
</head>
<body>
<video width="400" controls autoplay loop muted>
<source src="./assets/video/video1.webm" type="video/webm">
</video>
</body>
</html>
下面是fragment
中负责显示网页的Java代码:
mWebView.setWebContentsDebuggingEnabled(true);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
mWebView.getSettings().setMediaPlaybackRequiresUserGesture(false);
mWebView.getSettings().setAllowFileAccess(true);
mWebView.setWebChromeClient(new WebChromeClient());
mWebView.setWebViewClient(new WebViewClient());
mWebView.loadUrl("file:///android_asset/www/video1.html");
我还通过为活动和应用添加AndroidManifest
来修改android:hardwareAccelerated="true"
。
当我在具有API级别22的android TV模拟器上测试应用程序时,视频会自动启动,并且视频控件正常工作,但是当我使用具有API级别25的电视模拟器进行测试时,未显示视频,仅显示控件,但视频从未启动无论是通过控件还是自动,都只会显示一个白色块。
编辑1 :添加完整的HTML页面,清单配置和用于显示HTML页面的Java代码。
答案 0 :(得分:0)
我正在为遇到相同问题的任何人回答我的问题。
问题似乎与模拟器有关。今天,我收到了android电视盒,当我在其上测试应用程序时,它运行正常,没有任何问题。