Связь между пакетом android.graphics и SurfaceFlinger - PullRequest
4 голосов
/ 14 апреля 2011

Я пытаюсь понять связь между android.graphics package и SurfaceFlinger.

На основе графической документации Android существует два способа рисования 2D-графики.Один использует объект VIEW, а другой - непосредственно рисуя на холсте.Как я читал из документации, при рисовании непосредственно на Canvas можно создать поток, управляющий SurfaceView, который связан с SurfaceFlinger.В коде я также заметил, что android.graphics package - это просто оболочка для библиотеки SKIA.Функции SKIA вызываются с помощью JNI.Итак, я не могу определить, поступают ли вызовы на SurfaceFlinger.

Означает ли это, что при использовании объекта View для простой 2D-графики нет необходимости в SurfaceFlinger?Или Surfaceflinger всегда используется при рисовании любой графики на экране?Любые входы?

1 Ответ

1 голос
/ 11 июля 2011

На этот вопрос ответили в моем другом посте.

Android SurfaceFlinger

Согласно @hackbod (я также доказал это при дальнейшем анализе исходного кода),

SurfaceFlinger - это не то, что рисует ваше окно. Он выделяет буфер кадра для вашего окна, к которому фреймворк, работающий в вашем приложении, рисует напрямую, не взаимодействуя с SurfaceFlinger. Единственное взаимодействие, с которым SurfaceFlinger взаимодействует, когда вы рисуете свое окно, - это создание окончательного буфера нового кадра на экране, как только вы закончите рисовать кадр.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...