启动文本(A N D R I O D ) ) ) )。
一。 一种简单的替换方法,适用于将第二屏幕替换为静止图像
Ubuntu命令使用sudo apt-get install imagemagick安装imagemagick工具。
2 .制作接通了与画面分辨率相同大小的电源的徽标. png。 PS1 )目前只能使用静态图像. png3.在虚拟机上使用命令convert-depth8logo.png RGB : logo.raw
4 .将生成的徽标. raw放在文件系统的根目录下。
5 .在文件系统的根目录中运行命令
out/host/linux-x86/精明的心形锁/rgb2565 -rleinitlogo.rle.bak
将生成文件initlogo.rle.bak。
6 .请将生成的此文件放在2818 _ gingerbread/out/target/product/SDK demo/root目录中
7 .在文件系统的根目录中,使用#make firmware命令将initlogo.rle打包并重新写入镜像,即可完成对andriod字符串的更改
第二个。 原理分析
Android系统启动后,main ()在init.c上调用load_565rle_image )函数(/initlogo.rle ),如果读取成功,则为/dev/gragrage
定义要加载的图像文件的名称:
# define init _ image _ file '/initlogo.RLE '
intload _ 565 RLE _ image (char * file _ name );
#endif
在init.c上,main ()加载/initlogo.rle文件:
加载if (load _ 565 RLE _ image (init _ image _ file ) ) initlogo.rle文件
FD=open ()/dev/TTy0 )、O_WRONLY ); 将/dev/tty0设置为文本模式
if(FD=0) {
常数char * msg;
msg='n '
'n '
'n '
'n '
'n '
'n '
'n'//console is 40 cols x 30 lines
'n '
'n '
'n '
'n '
'n '
'n '
'n '
' A N D R O I D ';
write(FD,msg,Strlen ) ) msg );
关闭(软盘);
}
}
相关代码:
/系统/core/init/init.c
/系统/core/init/init.h
/system/core/init/init.rc
/系统/core/init/logo.c
* .创建RLE文件的步骤:
使用GIMP或高级batch转换器软件将图像转换为原始格式;
使用android附带的rgb2565工具将RAW格式的文件转换为RLE格式
示例: RGB 2565-rleinitlogo.rawinitlogo.RLE。
三。 添加
1 .修改徽标高度:位置文件drivers/video/console/fbcon.c
{{徽标_height=FB_prepare_徽标(info,ops-rotate ) }xxxxx
xx; //根据加减