点击下载:bootanimation.zip

一.开始动画的制作

1.bootanimation.zip制作

里边主要包含desc.txt(名称固定,修改系统识别不了)和part0(名字可自定义),desc.txt的内容如下:数字之间空1格,在输入完part0最后一行后换行(防止系统识别不了),然后保存。

 第一行:1024 600表示展示出来的动画宽度和高度,最好和自己设备尺寸一样,可以通过adb shell vm size获取(如下图),1表示每秒播放1帧图片(最好不要超过30)

第二行:p:固定p开头,第二个0表示循环播放的次数,0表示无限循环;第三个

0表示 播放完当前part中的动画后,暂停的帧数。(如该是40的话,40/20=2秒,即暂停2秒);part0表示文件夹的名称(和desc.txt放在同级目录)。

part0文件夹中就是摆放的图片,最好也是切和设备相同尺寸,此处以1024*600切图演示。命名按照顺序,比如01、02、03或者001、002、003等

 

 接下来,压缩,在windows上进行了压缩,压缩方式选存储,格式为ZIP,否则系统识别不了动画

 2.通过adb将bootanimation.zip包放到/system/media下

# adb root
# adb shell
# su
# mount -o remount,rw /system (如果出现'/system' not in /proc/mounts可以尝试1.adb root2.adb disable-verity//重点在这一步,取消验证即可,3.adb reboot)
# cd system
# cd media(如果是No such file or directory,则执行mkdir media创建media文件夹)
# exit
# adb push 你的bootanimation.zip /system/media
# adb reboot

注:cd到media中是为了确认media是否存在,避免push失败,push完可以cd到media中,ls查看是否有bootanimation.zip,再reboot重启



二.开机logo的制作

参考rockchip Android平台动态替换开机logo的实现_loitawu的博客-CSDN博客_android动态修改logo

 前面烧板子为了创建logo分区,进入adb shell通过指令

marvsmart_rk3566_r:/ $ ls dev/block/by-name/

 发现板子存在logo分区,就舍弃了改代码烧板子一系列步骤,直接用adb开始制作。logo.bmp为第一张logo,logo_kernel.bmp为第二张logo,这里就用一张logo.bmp来制作

1.logo图片为bmp格式,将logo.bmp图片push到sdcard下

adb push ../../logo.bmp /sdcard

2.制作logo.img

marvsmart_rk3566_r:/sdcard # cat logo.bmp > logo.img && truncate -s %512 logo.img

注:如果在开机logo完还会出现系统带的图像,则重新制作一张logo.img。

cat logo.bmp > logo.img && truncate -s %512 logo.img && cat logo_kernel.bmp >> logo.img

logo.bmp为 uboot logo

logo_kernel.bmp 为kernel logo

此处为了简化,直接把logo_kernel.bmp也替换成logo.img,

marvsmart_rk3566_r:/sdcard # cat logo.bmp > logo.img && truncate -s %512 logo.img && cat logo.bmp >> logo.img

3.将制作好的logo.img放到/dev/block/by-name/logo分区中

marvsmart_rk3566_r:/sdcard # dd if=logo.img of=/dev/block/by-name/logo                                                                                                                     

注:测试发现开机logo反了过来(垂直镜像了),让设计重新切了一张反的logo.bmp,重新制作放进去就可以了

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐