一个应用apk,一般由多个屏幕(多个activities,多个类)实现,一个屏到另一个屏,activities的基类是android.app.activity
用户刷新新的UI时,会从BufferQueue中申请一个buffer,然后把UI数据填入进去,再发给SurfaceFlinger合成计算,再发给OpenGL处理渲染,再发给fb0去显示。
android dev目录下有几个fb,就有几个图层,/dev/fb0 fb1 fb2 ……fbx 等,一般都只有两个图层fb0 fb1,两个图层计算,一个负责UI,一个负责鼠标。
surfaceFlinger是所有UI界面的管理者。
activity windowManagerservice ----》surfaceFlinger ----》 OpenGL ---------》fb0 fb1 fb2…… 驱动----》物理设备显示