可能有些愚蠢的事情發生了,但我試圖在應用程序中啓用硬件加速,目標鎖定爲每個this tutorial。未啓用硬件加速
我已經添加了以下到我的清單:
<uses-sdk
android:targetSdkVersion="12"
android:minSdkVersion="12" />
<application
...
android:hardwareAccelerated="true">
當我檢查硬件加速的狀態下,查看連接(通過調用一個重寫onAttachedToWindow()
isHardwareAccelerated()
),我現在回到真實的,所以所有後看起來很棒。問題是SurfaceView的畫布沒有被加速,因爲canvas.isHardwareAccelerated()
返回false。我正在檢查surfaceCreated()
,並且我在那裏也得到了真實性,所以我不知道Canvas正在失去這個設置。
任何指針?
EDIT1:
發現了谷歌開發人員組this和this,但我確實檢查,如果我檢查這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)而加速?