2

我正在尝试在 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());
4

1 回答 1

0

我不得不说,似乎没有人像我一样遇到过这个问题。所以我认为我的问题中提到的两个功能确实是相互矛盾的。

于 2012-12-20T17:41:24.250 回答