2012-01-09 119 views
5

可能有些愚蠢的事情发生了,但我试图在应用程序中启用硬件加速,目标锁定为每个this tutorial未启用硬件加速

我已经添加了以下到我的清单:

<uses-sdk 
    android:targetSdkVersion="12" 
    android:minSdkVersion="12" /> 

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

当我检查硬件加速的状态下,查看连接(通过调用一个重写onAttachedToWindow()isHardwareAccelerated()),我现在回到真实的,所以所有后看起来很棒。问题是SurfaceView的画布没有被加速,因为canvas.isHardwareAccelerated()返回false。我正在检查surfaceCreated(),并且我在那里也得到了真实性,所以我不知道Canvas正在失去这个设置。

任何指针?

EDIT1:

发现了谷歌开发人员组thisthis,但我确实检查,如果我检查这onAttachedToWindow()查看连接后,对不对?这是在运行3.1 BTW的联想平板电脑上。

EDIT2:

我曾尝试禁用加速通过设置

<application 
    ... 
    android:hardwareAccelerated="false"> 

而且我仍然看到真正从视图中onAttachedToWindow()回来,所以事情是不是就在这里。我没有明确地从代码中加速,也许是一个设备特定的问题?

此外,我偶尔看到下面的行logcat中的SurfaceView创建时:

surface (identity=524) is invalid, err=-19 (No such device) 

EDIT3:

只是想大声这里,但没有任何机会,Canvas是不由于它在自己的线程上,通过使用绘图循环的典型SurfaceView实现(如Lunar Lander)而加速?

回答