Я занимаюсь разработкой ICS и пытаюсь понять, почему метод
Canvas.isHardwareAccelerated() всегда возвращает FALSE при использовании
Canvas внутри SurfaceView.
Я попробовал такой простой пример:
http://android-coding.blogspot.com/2011 ... eview.html
Или этот : http://jmsliu.com/199/android-canvas-example.html
Я даже модифицировал их, чтобы в цикле рисования не было вызовов холста
думая, что я мог использовать некоторые неподдерживаемые аппаратные операции ускорения
для определенных вызовов рисования.
Я проверил этот список в разделе «Неподдерживаемые операции рисования»
developer.android.com/guide/topics/ Graphics/hardware-accel.html
но я ничего этого не делаю.
Я использую флаг рендеринга Force GPU в настройках разработчика
вместе с
внутри манифестов я также указываю minSDK/targetSDK >= 14.
View.isHardwareAccelerated вернет TRUE, а Canvas.isHardwareAccelerated всегда возвращает FALSE.
Я видел, что Canvas.java жестко запрограммировал возврат false для isHardwareAccelerated(), тогда как HardwareCanvas.java имеет вернуть истину. Думаю, по каким-то причинам я не получаю аппаратный путь, почему?
Может ли Canvas внутри SurfaceView быть аппаратно ускоренным?
Спасибо
Подробнее здесь: https://stackoverflow.com/questions/958 ... celeration