android boot 从内在划分为 uboot, kernel, zygote, framework, app loadind等阶段,从外在划分为 logo1, logo2, bootanimation, homescreen的等界面。mtk平台开机分为第一次开机,正常开机,快速开机几种。
这几天学习了一些bootanimation的细节,记一下。
bootanimation是所谓的logo3阶段,它的图片放在data/local/bootanimation.zip和 system/media/bootanimation.zip里,我是先push到 system/media/目录下的,然后data/local下就有了。应该是有作copy吧(这里可能有误,没确认过)。这里需要学习下linux fs的内容,未研究。代码里是先到data/local/bootanimation.zip里去取,若取不到,则到system/media目录下取,从这里来看data/local象是保存用户设置开机动画的位置。
bootanimation.zip解压后是folder1,folder2,desc.txt 2个目录1个文件。folder1下有30帧图片,folder2下15帧,desc.txt里的内容是
540,960,100
p 1 0 folder1 400
p 0 20 folder2 5
这个文件在bootanimation.cpp的 movie目录里进行解析,结合代码,我知道了这些数字的含义。
540,960,100 //screen_width, screen_height, fps
p 1 0 folder1 400 //p是一个标识表示该行是该animation的一个part, 1表示该part循环次数,0是pause时间&#