Android bootanimation 制作过程

这个东西一直想研究,今天无意发现转过来看看

Android bootanimation制作过程:

android启动动画需要一个bootanimation.zip, bootanimation.zip 放在 /system/media 目录下。

bootanimation 格式:

bootanimation.zip 里面包含part1 part2文件夹 和 desc.txt

user1@user1-desktop:~/Downloads/boot/bootanimation$ tree

.

|-- desc.txt

|-- part0

|   |-- tianyi_00000.png

|   |-- tianyi_00001.png

|   |-- tianyi_00002.png

|   |-- tianyi_00003.png

|   |-- tianyi_00004.png

|   |-- tianyi_00005.png

|   |-- tianyi_00006.png

|   |-- tianyi_00007.png

|   |-- tianyi_00008.png

|   |-- tianyi_00009.png

|   |-- tianyi_00010.png

|   |-- tianyi_00011.png

|   |-- tianyi_00012.png

|   |-- tianyi_00013.png

|   |-- tianyi_00014.png

|   |-- tianyi_00015.png

|   |-- tianyi_00016.png

|   |-- tianyi_00017.png

|   |-- tianyi_00018.png

|   |-- tianyi_00019.png

|   |-- tianyi_00020.png

|   |-- tianyi_00021.png

|   |-- tianyi_00022.png

|   |-- tianyi_00023.png

|   |-- tianyi_00024.png

|   |-- tianyi_00025.png

|   |-- tianyi_00026.png

|   `-- tianyi_00027.png

`-- part1

`-- tianyi_00028.png

part0, part1 文件夹里面放的是动画拆分的图片,格式为png .

desc.txt里面是播放 的设置 .

desc.txt格式 :

user1@user1-desktop:~/Downloads/boot/bootanimation$ cat desc.txt

320 480 10

p 1 0 part0

p 0 0 part1

320 480是指显示的分辨率 宽 高

10是一秒的帧数

p后面的数字是指播放次数 0为循环

后面那位数字 一般为0

part0 为文件夹名

为什么要用两个文件夹呢? 一般 :

part1是播放一遍的

part2是循环播放直到开机

打包:

打包的时候一定不要压缩文件(压缩比为0)。

如果是在 linux下面,用下面的命令:

cd directory/that/contains/desc.txt/and/part0/part1/

zip -r -X -Z store ../bootanimation part*/*.png desc.txt

Android系统开机动画包括两部分:

开机显示的 ANDROID 文字;

ANDROID发光动画。

这篇文章说的开机动画是第一种,下面开始正文!

1. 制作当前屏幕像素的图片(模拟器默认为320*480)

使用PS制作一张320*480的图片,保存时选“保存为 Web 所用格式”,然后在弹开的窗口上,“预设”项选择“PNG-24”,保存为android_logo.png

注:好像只支持png-24,其他格式生成的rle文件显示不正常,有兴趣大家可以再验证一下。

2. 将图片转换为raw格式

使用linux下的ImageMagick自带的convert命令,进行raw格式转换,命令为:

convert -depth 8 android_logo.png rgb:android_logo.raw

注:ubuntu 10.04 默认已经安装ImgageMagick工具,如果当前系统没有安装,可以执行下面的命令安装:

sudo apt-get install imagemagick

3. 将raw格式转化为rle文件

需要用到android编译后的rgb2565工具,在android/out/host/linux-x86/bin目录下(android 为当前源码所在目录),转换命令如下:

rgb2565 -rle < android_logo.raw > initlogo.rle

到目前为止,启动需要显示的图像已经做好了,就是initlogo.rle,注意文件名必须是这个,如果想改文件名,需要修改 android/system/core/init/init.h中的宏:

#define INIT_IMAGE_FILE "/initlogo.rle"

============================================================================================

下面需要将initlogo.rle加入的android文件系统中

4. 找到ramdisk.img文件(android/out/target/product/generic/ramdisk.img),将文件名改为 ramdisk.img.gz,然后使用下面的命令解压:

gunzip ramdisk.img.gz

解压后得到ramdisk.img,可能有人要问,怎么文件名又改回去了?其实不然,使用file ramdisk.img查看一下就知道了:

解压前:ramdisk.img: gzip compressed data, from Unix

解压后:ramdisk.img: ASCII cpio archive (SVR4 with no CRC)

跑题了,还是说正事儿。

5. 使用cpio提取文件:

新建一个temp目录:

mkdir temp

cd temp

cpio -i -F ../ramdisk.img

6. 导出文件列表:

cpio -i -t -F ../ramdisk.img > list

注:list是一个文本文件,里面存储了ramdisk.img的文件结构,我们需要在这个文件中加入initlogo.rle这一行,修改后 的文件如下:

data

default.prop

dev

init

init.goldfish.rc

init.rc

initlogo.rle

proc

sbin

sbin/adbd

sys

system

7. 生成ramdisk.img

cpio -o -H newc -O ramdisk.img < list

注:根据list文件的描述,生成ramdisk.img文件

8. 用ramdisk.img覆盖sdk目录下的ramdisk.img(android-sdk-windows/platforms/android- 2.1/images/ramdisk.img),最好先备份一下。

9. 启动模拟器,就可以看到我们自己做的的开机界面了。

linux开机动画制作教程,【转载】开机动画的制作过程(bootanimation.zip)相关推荐

  1. 抖音记事本代码html,抖音表白程序制作教程 抖音表白代码制作分享-记事本文件...

    抖音表白程序制作教程 抖音表白代码制作分享 抖音是一款短视频软件,上面有很多新奇而富有创意的玩法,比如最近很火的利用弹窗表白,那么抖音表白程序应该怎么制作呢?下面小编给大家带来抖音表白程序制作教程分享 ...

  2. PPT制作教程:如何使用PowerPoint制作手绘粉笔字效果PPT教程

    PPT制作教程:如何使用PowerPoint制作手绘粉笔字效果PPT教程 当您在观看别人的PowerPoint时候,是否经常会看到类似于粉笔字效果呢? 今天的教程就教大家使用PPT制作粉笔字效果的幻灯 ...

  3. android开机动画视频教程,【Android开机动画制作教程】开机动画文件组成及其详解释疑!...

    [开机动画位置] 安卓原版系统开机动画位置: system/media/bootanimation.zip或者data/local/bootanimation.zip 这两处的区别在于动画放在syst ...

  4. html柳树动画,3D教程-柳树生长动画

    首先看一下效果图. 效果图2. 动画线框图. 粒子流的大体情况如下图. 先来看看树体生长的制作,下图是从根部长出的第一个粒子的产生结构分析图. 定义这个粒子的初始形态,这样以来由它所引导出的左右树支树 ...

  5. 我的世界服务器php插件制作教程,我的世界服务器制作教程 服务器怎么做

    来源: 网络 我的世界服务器制作教程 服务器怎么做 我的世界服务器建立并不难,只要运行服务器端软件就可以,但是如何能让一台服务器长期运行下去就是一件很有挑战性的事情了.这里给大家带来玩家开服遇到的问题 ...

  6. php 表格制作教程下载,word表格如何制作教程?

    word表格如何制作教程? word表格制作的方法: 1.鼠标移到需要插入表格的位置,选择"插入"菜单中的"表格",在弹出的小菜单中拖动鼠标,比如我们选择5行5 ...

  7. 小学计算机电子手抄报计划,电子手抄报制作教程:小学生用WORD制作电子手抄报的方法和技巧...

    小学生如何制作电子手抄报呢?本文详细介绍了电子手抄报制作教程以及电子手抄报的制作方法和技巧.利用计算机排版技术编辑制作手抄报.简报也很普及了.现在来教您如何利用WORD来制作手抄报,例如,制作一个主要 ...

  8. linux开机动画制作教程,Android开机画面制作(Bootloader阶段)

    Android开机画面由三部分组成,第一部分在bootloader启动时显示(在Android1.5版本以前是显示一个小企鹅,1.5版本及之后取消了):第二部分是在Kernel启动初始化时,出现&qu ...

  9. 计算机辅助教学:多媒体课件制作教程,计算机辅助教学——多媒体课件制作教程 教学课件 作者 付明柏电子教案( ) 第7章 利用Dreamweaver制作多媒体CAI课件.ppt...

    下面将"鼠标经过图像"技术应用于事先制作好的导航图片.将光标放置在第1个单元格中,执行"插入→图像对象→鼠标经过图像"命令,如图7-149所示. 图7-149 ...

  10. 在线封面制作教程,让你轻松制作出个性化的公众号封面

    作为一个公众号的运营者,封面图是吸引读者注意力的重要元素之一.然而,许多人在设计封面图时常常感到手足无措.如果你也有同样的困扰,那么本教程将会帮助你一步步完成一个完美的封面图作品. 首先,你需要注册并 ...

最新文章

  1. 基于锁相环的调制解调仿真实现
  2. 笑谈.Net的开发境界
  3. mini CentOS7 安装 mysql
  4. 如何架设自己的 SAP UI5 资源服务器
  5. ERROR: Unrecognized command line argument: #39;use#39;
  6. [转载] 七龙珠第一部——第084话 天下第一高手
  7. Tomcat报错:The required Server component failed to start so Tomcat is unable to start
  8. CentOS5.2下安装yum
  9. RQNOJ 30 愚蠢的矿工 解题报告
  10. docer实战linux和windows配置mysql,redis,nginx
  11. 服务器维护 灵魂兽,魔兽世界7.0新灵魂兽麋鹿捕捉方法
  12. 元宇宙NFT最近最火的项目,该如何选择平台呢
  13. JAVA 调用地图API
  14. 读书笔记《股票作手回忆录》
  15. C++整型int转字符串string
  16. qt界面之-statusBar的使用方式
  17. 单片机——PWM调光工作原理
  18. 【大咖说:绿色低碳的生活该是什么样子?】
  19. puking java_GitHub - pukingli/mpsdk4j: JAVA微信公平台开发SDK,没有复杂的功能,一切源于微信API,愿你会喜欢使用。...
  20. Matlab App Designer自学笔记(七):对话框的使用(提示对话框、提问对话框、文件对话框)

热门文章

  1. php sdk qq 错误码,QQ互联登录PHP-SDK invalid openid错误—解决方法
  2. React - 一般组件 withRouter 的使用(让一般组件具备路由组件特有的API属性)
  3. PL SQL远程连接数据库
  4. 股票入门基础知识第98集:什么是可转换债券?
  5. 高考志愿填报,选专业应该考虑哪些因素?
  6. javafx 图表css,如何在CSS中的第7个系列之上更改javaFX LineChart中的图标?
  7. C++ 字符串与整数之间的转换
  8. linux模糊查找命令,Linux模糊查找文件应该用什么命令比较好?
  9. ArrayDeque类的使用
  10. 2022年中国制造业数字化转型研究报告