android boot animation

android: v2.3.4
一、开机显示
开机文字ANDROID
系统启动后,读取根文件下的/initlogo.rle一张565 rle压缩的位图,如果读取成功
在/dev/graphics/fb0显示Logo图片,如果读取失败,则将/dev/tty0设为TEXT模式
并打开/dev/tty0,输出A N D R O I D
*.rle文件的制作
1.使用ImageMagic自带的convert命令,进行raw格式转换
apt-get install imagemagick
convert -depth 8 01.bmp rgb:logo.raw
得到logo.raw文件
2.out/host/linux-x86/bin/rgb2565
out/host/linux-x86/bin/rgb2565 -rle <logo.raw> initlogo.rle
3. 把initlogo.rle 放到android根文件系统里
二、开机动画
1. 修改默认的Android文字动画
android系统登录动画是由前景和背景两张PNG图片构成,前景图片
位于android/frameworks/base/core/res/assets/images/android-logo-mask.png
上面的文字局部镂空,背景图片
android/frameworks/base/core/res/assets/images/android-logo-shine.png是
容易的纹理,系统登录时,前景图片在最上层揭示,代码控制背景图片滚动,透过
前景图片文字镂空局部滚动纹理形成动画效果
Android默认的前景图片大小的像素是256*64
所又把我们要换的图片的大小做成256*64
背景图片大小是512*64
相关代码
frameworks/base/cmds/bootanimation/BootAnimation.cpp
图片名称为company-logo-mask.png
bool BootAnimation::android()
{
#if 1
    initTexture(&mAndroid[0], mAssets, "images/company-logo-mask.png");
#else
    initTexture(&mAndroid[0], mAssets, "images/android-logo-mask.png");
#endif
    initTexture(&mAndroid[1], mAssets, "images/android-logo-shine.png");
}
或者不用改代码,直接把自己的logo图片重命名为android-logo-mask.png
2. 自定义动画
主要实现的代码/frameworks/base/cmds/bootanimation/BootAnimation.cpp
status_t BootAnimation::readyToRun() {
    status_t err = mZip.open("/data/local/bootanimation.zip");
    if (err != NO_ERROR) {
        err = mZip.open("/system/media/bootanimation.zip");
        if (err != NO_ERROR) {
            mAndroidAnimation = true;
        }
	}
}
把要显示的动画的图片打包成bootanimation.zip文件,然后
放到文件系统的/data/local/或/system/media/目录下,系统开机会检查这两个目录
如果目录下没有bootanimation.zip则用默认的上面的Android开机动画 
bootanimation.zip文件打包前的结构:
part0文件夹 desc.txt
desc.txt的内容
480 800 7
p 0 0 part0
参数的代表的意思:
480: 图片的宽 		800: 图片的高	7: 每秒显示的帧数(每秒显示图片数量)
p:	 标识符         0:   循环的次数 0:图片切换间隔时间	  part0: 对应图片的目录
对应图片的目录是动画系列图片,图片的格式为PNG,jpg最好是PNG格式,其他格式容易失真

zip -r -0 bootanimation.zip part0 desc.txt
总结:上面的第一种修改默认的Android文字动画,显示两个图片:前景图片和背景图片是在
1.5版本用,后来就改为了下面的动画文件,自定义动画

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值