您的位置:首页 > 移动开发 > Android开发

android系统开机画面log和动画的自定义

2016-12-22 11:21 218 查看
修改启动log

1,准备一张png图片,图片大小随意,但是必须裁剪成和LCD尺寸大小一样,本实验的LCD尺寸是480x272,

所以选了一张480x272大小的png图片

2,将图片转换为raw格式

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

  Convert  -depth  8  honeycomb_480x272.png  rgb:honeycomb_480x272.raw

注:如果当前系统没有安装,可以执行下面的命令安装:

  sudo apt-get install imagemagick

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

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

./out/host/linux-x86/bin/rgb2565 -rle <honeycomb_480x272.raw >honeycomb_480x272.rle

4,将honeycomb_480x272.rle拷贝至文件系统的根目录下

修改:#define INIT_IMAGE_FILE "/initlogo.rle" -》

#define INIT_IMAGE_FILE "/honeycomb_480x272.rle"

修改开机动画:

1,制作bootanimation.zip,这个需要大家花点心思了,做个动画玩玩,开机动画实际就是多张图片循环播放,所以需要大家去制作多张能循环播放的图片,并且图片连续起来能有动画的效果,在这里我们就到网上下载了bootanimation.zip

2,bootanimation.zip中内容格式为

bootanimation.zip

|-- desc.txt

|-- part0

`-- part1

其中desc.txt为描述文件

480 427  30

p 1 0 part0

p 0 0 part1

120和180分别对应图像宽、高像素数,30表示将按照30fps速度播放图片[gliethttp]

p表示part,也就是含有png图片的目录为part0(part1)

 

desc.txt文件分析: 

    480  427   30

     宽   高    帧数

      p         1              0                      part0

    标志符 循环次数 阶段切换间隔时间   对应目录名

      p         0             10                     part1 

    标志符 循环次数 阶段切换间隔时间  对应目录名

标志符: 

        必须是: p

    循环次数: 

        0 : 表示本阶段无限循环

    阶段切换间隔时间: 

        单位是一个帧的持续时间,比如帧数是30,那么帧的持续时间就是1秒/30 = 33.3毫秒。

        阶段切换间隔时间期间开机动画进程进入休眠,把CPU时间让给初始化系统 使用。

        也就是间隔长启动 会快,但会影响动画效果。

part0和part1目录内包含的是两个动画的系列图片,图片为PNG格式,但是我们这个实验中图片是jpeg的,一样可以

3,我们把图片解压缩,修改desc.txt

480 427  30

p 1 0 part0

p 0 0 part1

4,重新压缩

linux下的压缩方法为:(加入-0的意思是indicates no compression (store all files))

 zip -0 -r ../bootanimation.zip *

5,将bootanimation.zip放到开发板的文件系统/system/media/目录下即可

一般/system/是没有media,所以可以新建一个
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: