因为项目的需要,看了看Android开机动画的内容,网上相关资料很多,做个笔记:
对于开机动画主要分为三种:
1 linux开机动画,内核的bootloader加载, 格式应该是8bit的BMP,据说android1.5以下都有这样的开机动画
2 开机中文字ANDROID动画,
相关代码:init.c(android\system\core\init),
3 开机中闪闪的ANDROID动画:
其实是由两张png图片构成的,文件位置 android\frameworks\base\core\res\assets\images
相关代码:android\frameworks\base\cmds\bootanimation
查看相应的Android.mk,很明显会编译为一个可执行文件:bootanimation
系统启动后,运行bootanimation,可以看到开机动画,
查看相应code,大体逻辑是:
1)首先尝试打开/data/local/或者/system/media/下的bootanimation.zip文件,没有此文件到2)
如果有此文件,进到movie(),开机动画就是bootanimation.zip中内容
2)进到android(),开机动画就是原始的闪闪ANDROID, 所以说有人将bootanimation.zip删除后,开机动画就变成ANDROID了。
关于bootanimation.zip的内容以及制作方法,网上很多。