Android 开机会出现3个画面:
a. Bootloader启动,出现Android机器人图像;( {, n( b! O& n% ?
修改目标:用自定义的ppm图片替代/drivers/video/logo/logo_linux_clut224.ppm
同时删除logo_linux_clut224.c logo_linux_clut224.o文件这样才能使编译的使用logo_linux_clut224.ppm重新编译
ppm图片的生成: 准备一个PNG格式的图片。; j4 s6 [5 P2 U1 A9 |- x
# pngtopnm logo_linux_clut224.png > logo_linux_clut224.pnm
# pnmquant 224 logo_linux_clut224.pnm > logo_linux_clut224.pnm
# pnmtoplainpnm logo_linux_clut224.pnm > logo_linux_clut224.ppm# O V Q) p' z, P. L
然后重新编译内核,新的第个图就换好了!6 i, Z; q+ O7 I
b. Android平台启动初始化,出现"A N D R I O D"文字字样画面;
Android 系统启动后,读取 /bootable/recovery/etc/initlogo.rle(一张565 rle压缩的位图),如果读取成功,则显示Logo图片;如果读取失败,则 , ?/ l. \! Q1 z, I8 X
将/dev/tty0设为TEXT模式,并打开/dev/tty0,输出文本“A N D R I O D”字样,相关代码: /system/core/init/init.c 文件 main()中。
c. Android平台图形系统启动,出现含闪动的ANDROID字样的动画图片。8 m8 ^' C0 J) h
Android 的系统登录动画类似于Windows系统的滚动条,是由前景和背景两张PNG图片组成,这两张图片存在于/system/framework /framework-res.apk文件当中。前景图片(android-logo-mask.png)上的Android文字部分镂空,背景图片(android-logo-shine.png)则是简单的纹理。系统登录时,前景图片在最上层显示,程序代码控制背景图片连续滚动,透过前景图片文字镂空部分滚动显示背景纹理,从而实现动画效果。9 c( T8 ^9 c8 N5 ]
9 ~8 |% h* s( \% [( o3 e
相关代码:2 h9 t2 h' ?1 d& ]! p+ d1 w
/frameworks/base/libs/surfaceflinger/BootAnimation.h
/frameworks/base/libs/surfaceflinger/BootAnimation.cpp, q$ X' V: V5 j3 J6 o7 d ]
2 i J) \$ r8 j7 T% u" L- s% l
/frameworks/base/core/res/assets/images/android-logo-mask.png1 U: O+ K; b' J
Android默认的前景图片,文字部分镂空,大小256×64) p# A! ]" X( w9 ~- |
/frameworks/base/core/res/assets/images/android-logo-shine.png
Android默认的背景图片,有动感效果,大小512×64
阅读(2340) | 评论(0) | 转发(0) |