1.概述
在10.0的产品进行平板设备开发中,需要横屏显示,所以需要把屏幕方向旋转90,作为横屏显示,但是这样可能会引起一个问题 就是开机动画显示不全,就是虽然画面是横屏显示了 但是只能显示一部分显示不全
2.横屏旋转开机动画显示不全的解决方案的核心类
frameworks\native\services\surfaceflinger\DisplayDevice.cpp
3.横屏旋转开机动画显示不全的解决方案的核心功能分析和实现
功能分析
android显示系统的核心是surfaceflinger,它为所有的应用程序提供显示服务显示的翻转和旋转也是由surfaceflinger完成的,所以分析下surfaceflinger的旋转流程
surfaceflinger启动后首先进行初始化操作,设置surfaceflinger的相关属性并创建了DisplayDevice对象
所以重点看DisplayDevice.cpp的源码
路径:frameworks\native\services\surfaceflinger\DisplayDevice.cpp
DisplayDevice::DisplayDevice(DisplayDeviceCreationArgs&