Я разрабатываю ICS и пытаюсь понять, почему Canvas.isHardwareAccelerated() всегда будет возвращать FALSE при использовании Холст внутри SurfaceView.
Я пробовал очень простой пример: http://android-coding.blogspot.com/2011/05/drawing-on-surfaceview.html Или этот: http://jmsliu.com/199/android-canvas-example.html
Я даже модифицировал их, чтобы не иметь никаких холстов-вызовов внутри цикла рисования думая, что я мог бы получить некоторые неподдерживаемые операции ускорения HW для некоторых вызовов рисования. Я проверил этот список в разделе "Неподдерживаемые операции рисования" developer.android.com/guide/topics/graphics/hardware-accel.html но я не делаю этого.
Я использую флаг рендеринга Force GPU внутри параметров разработчика вместе с внутри манифеста, также я указываю minSDK/targetSDK >= 14.
View.isHardwareAccelerated вернет TRUE, в то время как Canvas.isHardwareAccelerated всегда будет возвращать FALSE.
Я видел, что Canvas.java имеет hard-encodeded return false для isHardwareAccelerated(), а HardwareCanvas.java возвращает true. По некоторым причинам, я не получаю HW-путь, почему?
Можно ли ускорить холст внутри SurfaceView?
Спасибо