我们在使用最新固件(Android 4.0.3,固件版本7.4.6)的Kindle Fire HD 7上的WebView中播放嵌入式视频时出现问题。
先决条件:
屏幕上显示的静态杂志页面图像(来自JPG文件)(使用ImageView);
HTML页面显示在静态图像上(WebView在自定义布局中; WebView和 布局背景是透明的!);
HTML页面包含“iframe”标记内的“视频”标记。
在所有经过测试的设备上,这种组合工作正常:WebView在静态页面图像上绘制透明背景,因此,HTML页面上的视频正确放置在ImageView的静态JPEG中。除了Kindle Fire。
在Kindle Fire上,WebView始终使用白色非透明背景绘制。 WebView不响应setBackgroundColor或setBackgroundDrawable调用。尝试从Javascript设置HTML正文背景颜色也不成功。因此,静态图像在HTML'overlay'下不可见。
本主题建议 - Android WebView style background-color:transparent ignored on android 2.2 - 我正在尝试关闭WebView的硬件加速:
webView.setBackgroundColor(0x00000000);
webView.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
Kindle Fire以适当,透明的背景绘制WebView。但是之后网页上的视频失败了!更准确地说,在启动视频时,只播放音频,没有图片。
总结:硬件加速开启 - WebView使用不正确的背景; hw加速关闭 - HTML中的视频播放没有图片。
几天的谷歌搜索不会导致任何解决方案。有人解决了Kindle Fire或其他设备上的类似问题吗?