我正在尝试在 Android 上制作一个浏览器,它扩展了 WebView 类。
我的浏览器有两个功能:
1.可以播放html5视频标签。 (我启用了 HardwareAccelerate 和 setWebChromeClient,它在 Android 4.0 上运行良好。)
2.浏览器必须有透明背景。 (在 Android 4.0 上,仅 setBackground(0) 是不够的。我还必须使用 setLayerType(LAYER_TYPE_SOFTWARE, null)。)
但是当我使用 setLayerType(LAYER_TYPE_SOFTWARE, null) 时,视频标签无法播放。这意味着 setLayerType(LAYER_TYPE_SOFTWARE, null) 禁用 HardwareAccerlarate 因此视频标签无法工作。
那么我可以考虑在 Android 4.0 上,这两个功能是冲突的吗?有什么解决方法吗?
//set BackGroundColor
setBackgroundColor(Color.argb(0, 0, 0, 0));
if(android.os.Build.VERSION.SDK_INT>=11){
setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
}
//set WebChromeClient
setWebChromeClient(new WebChromeClient());