Android 的开机动画是由 Linux 本地守护程序 bootanimation 专门控制实现的,其代码在: frameworks/base/cmds/bootanimation/ 目录下,修改 Android 开机动画有两种方式:
1、蒙板图片(蒙版动画)替换:
替换 frameworks/base/core/res/assets/images/ 目录下的两个图片文件:android-logo-mask.png和android-logo-shine.png。android-logo-mask.png 是镂空蒙板图片,android-logo-shine.png 是镂空蒙板后面的闪光 png 图片。两个图片通过叠加移动来达到动画效果。该方法需要编译Android源码实现。
2、逐帧动画替换:
在 /data/local/ 或 /system/media/ 目录创建 bootanimation.zip 文件,该压缩包文件里存放有逐帧动画及控制脚本。放在 /data/local 目录下,不需要编译 Android 源码,直接通过 adb 命令或文件管理软件拷贝到目录下即可;放在 /system/media/ 目录下,需要重新编译 Android 源码。
当我们使用逐帧动画时,蒙板动画就不播放了,这是因为 Android 系统只能使用一种启动动画方式,先判断是否使用了逐帧动画,如果没有使用逐帧动画时,才使用默认的蒙板动画。
本人是按照第二种方法的 /system/media/ 目录下替换开机动画,其默认位置 /system/media/bootanimation.zip,源码的路径为 device/***/***/bootanimation/bootanimation.zip (***