如何在JB上使用GPU后端启用skia



我听说Skia GPU acc是在Android 3.0中添加的,但似乎从Android 4.0开始就默认禁用了,可能是因为转向了HWUI (Canvas的openGL实现)。我怎么能再次启用它,只是为了基准测试的目的。

我不知道Skia还有其他的硬件加速方法。不过对于HWUI,开发者的文档概述如下:http://developer.android.com/guide/topics/graphics/hardware-accel.html

如果您已经知道HWUI的实现,请向我道歉。

您可以使用四种级别的控制:

应用程序级别、活动级别、窗口级别和视图级别。

应用程序级别

在您的清单中添加以下属性到您的应用程序:

 <application android:hardwareAccelerated="true" ...>`

活动水平

在您的清单中为您的活动添加以下属性:

<application...>
   <activity android:hardwareAccelerated="true" />
</application>

你也可以混合和匹配应用程序和活动级别,只在某些活动上启用HWUI,像这样:

<application android:hardwareAccelerated="true">
   <activity ... />
   <activity android:hardwareAccelerated="false" />
</application>

窗口水平

注意:只能在窗口级别启用HWUI,不能禁用。

在你的src:

getWindow().setFlags(
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);

视图水平

注意:不能在视图中启用HWUI,只能启用disable。在你的src:

myView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

你对HWUI的看法也是正确的:

Android Honeycomb(3.0)看到了HWUI(硬件加速)作为所有应用程序的选项,而无需任何额外的绘制代码。系统将自动为所有兼容的渲染方法运行预定义的OpenGL ES函数,而不是SKIA。

在Android Ice Cream Sandwich(4.0)中,HWUI是默认的。因此,所有4.0+设备必须具有支持OpenGL ES 2.0的GPU。

相关内容

  • 没有找到相关文章

最新更新