Android开机画面总共有三屏

一、第一屏:开机logo

1、选张png格式的图片,在Linux任意下执行(安装工具):

sudo apt-get install pnmtoplainpm

2、在所要定制logo的pngtopnm logo.png目录执行(转换成pnm格式):

pngtopnm logo.png > logo_linux.pnm

3、再执行(转化成224的pnm图片):

pnmquant 224 logo_linux.pnm > logo_linux_clut224_formal.pnm

4、执行(转换成ppm格式):

pnmtoplainpnm logo_linux_clut224_formal.pnm > logo_linux_clut224.ppm

5、/kernel/drivers/video/logo/logo_linux_clut224.ppm是默认的启动Logo图片,把自己的ogo_linux_clut224.ppm替换这个文件,同时删除logo_linux_clut224.c

logo_linux_clut224.o文件(如果存在) 。

6、进入kernel目录重新编译内核

cd kernel

make kernel.img

二、第二屏:Android字样

Android系统开机会出现“A N D R O I D”这行字,相信大家都不陌生,那么这个怎么修改呢?相关文件在Android系统源码(不是Android内核源码)system/core/init/init.c,如下代码片段

if( load_565rle_image(INIT_IMAGE_FILE) ) {

fd = open("/dev/tty0", O_WRONLY);

if (fd >= 0) {

const 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));

close(fd);

}

} :

到这里大家就知道怎么修改了吧。但是这里要提到的一点就是,上面的代码片段有一个if语句,就是先检测在文件系统根目录下是否存在要实现的开机动画,如果不存在的话,那么就显示这个文本信息代替,所以,这个阶段是可以实现图片的显示的,而且图片的格式是.rle格式的。如果不存在就显示文本,所以你可以选择系那是自己的文字,也就是修改“A

N D R O I D”字样啊。也可以选择显示图片,但是要自己在文件系统的根目录下提供提片,具体的图片的名字在init.h文件中定义:

#define INIT_IMAGE_FILE   "/initlogo.rle"

int load_565rle_image( char *file_name );

看到上面的宏定义大家就懂了吧,至于怎么制作rle格式的,这个使用一些软件就好。

三、第三屏:开机动画

这个阶段就是大家能看到的系统启动过程中,显示完"A N D R O I D"字样后显示的图片,类似进度条一样,图片内容也是“A N D

R O I

D”字样。这里怎么修改呢?其实这个部分的动画是使用两个图片显示出来的,具体的图片文件所在路径为:frameworks/base/core/res/assets/images,大家看一下就知道了,也就知道怎么修改了。但是还没完。和这部分相关的源码文件主要是如下几个:frameworks/base/cmds/bootanimation下面的几个文件就是的了,可以看看BootAnimation.cpp文件的内容,有如下代码片段:

bool BootAnimation::android()

{

initTexture(&mAndroid[0], mAssets, "images/android-logo-mask.png");

initTexture(&mAndroid[1], mAssets, "images/android-logo-shine.png");

}

这就是设置显示的前景图片和背景图片。接着看还有如下代码:

#define USER_BOOTANIMATION_FILE "/data/local/bootanimation.zip"

#define SYSTEM_BOOTANIMATION_FILE "/system/media/bootanimation.zip"

#define SYSTEM_ENCRYPTED_BOOTANIMATION_FILE "/system/media/bootanimation-encrypted.zip"

看宏名相信大家就知道了,这就是设置动画文件的名称了。为什么会又显示图片又设置动画显示呢,这个Android版本有关。显示两个图片:前景和背景图片是在1.5版本用,后来就改为了设置动画文件,就是:bootanimation.zip,是zip格式的,这个文件包含三个内容:两个目录:part0和part1,一个文件desc.txt。两个目录用来包含要显示的图片,分为第一阶段和第二阶段。剩下的文件就是设置关于如何显示的信息:

示例如下:

480 800 15

p 1 0 part0

p 0 0 part1

具体的含义如下:

480--width of the image, 800--height of the image, 15--frames of second

p 1, display one time

p 0, display recycling till handset power on finished

相信大家懂了!呵呵。

你可以制作自己的bootanimation.zip文件放置在合适的目录下,这样可以代替默认的开机界面:这里说的合适的目录就是上面的宏定义,大家都懂^_^!怎么制作bootanimation.zip文件呢?和上面一样创建两个目录和一个文件,然后使用软件或者是命令行大包即可

zip -r -0 bootanimation.zip part0 part1 desc.txt

至此,自定义开机画面就完成了!

以下是我自己定制开机动画的过程:

(1)、如果只要替换原动画的话流程如下:

1、编译成功后在android源码根目录生成out目录

2、修改android\out\target\product\sdkDemo\system\framework目录下的framework-res.apk

用winrar格式打开,替换assets\images里的2张图片即可

(2)、如果要完全自己制作开机动画的话,流程如下:

1、准备好要制作的图片放在指定文件夹内(我的是android1、android2两个目录,里面是若干png格式图片)

2、编写desc.txt文件,指定动画参数(我的配置是:1366 768 9p 1 0 android1p 0 0 android2)

3、在android1、android2、desc.txt所在目录执行:

zip -0 bootanimation.zip android1/*png android2/*png desc.txt

4、将bootanimation.zip拷贝到自定义media目录下,修改自己的makefile文件,添加以下类似代码:

PRODUCT_COPY_FILES += \$(call find-copy-subdir-files,*,$(LOCAL_PATH)/media,system/media)

5、重新编译

雷神开机logo更改_开机logo以及两种修改开机动画方法相关推荐

  1. win10与linux 开机黑屏,win10系统开机黑屏进不去的两种原因及解决方法

    win10电脑用久了总会会遇到某些故章,较为普遍的属于黑屏了.黑屏的故障就可以分为多种状况,比如开机黑屏,只有鼠标出现.或者是驱动不兼容导致电脑黑屏等,造成黑屏的原因也有很多,所以不同情况,修复方法也 ...

  2. win10设置开机启动项_如何在bios设置中修改开机启动项

    如今u盘装系统的方法已经遍布了不少电脑装机城中,只要通过制作好的u盘启动盘就可以为电脑快速装机.通常我们所知道的使用方法则是在电脑开机启动时使用u盘启动快捷键即可达成,但通常这一方法适用于目前新生产的 ...

  3. 归一化mysql函数_数据归一化和两种常用的归一化方法

    数据归一化和两种常用的归一化方法 一.总结 一句话总结: min-max标准化:x* =(x-min)/(max-min):新数据加入,需重新计算max和min Z-score标准化:x* =(x-μ ...

  4. 计算机win10开机音乐,Windows10系统更改开关机声音的两种方法

    Win10正式版电脑在开机或关机时都伴随着系统自带的声音.而不少用户为了让自己的windows10系统电脑变得更加个性化一些,因此都想要自己手动更改开关机音乐.这该如何操作呢?下面,小编就向大家介绍两 ...

  5. Win10开机提示自动修复失败无限死循环的一种可能的解决方法

    Win10开机提示自动修复失败无限死循环的一种可能的解决方法 今天电脑上想装一个以前的老游戏,装完之后提示我要开启管理员模式安装一个安全启动的软件,结果这个软件没装成,电脑直接就关机了,然后重启之后就 ...

  6. 雷神开机logo更改_雷神911 pro-钛空版开售,陪你过一个不一样的520

    马上就要到5月20号了,你想好怎么过了吗?偷偷告诉你,雷神911 pro-钛空版将在今晚0点开售了,再加上天猫520礼遇季优惠,十分划算.还没碰到对的人?但是可以先碰到对的游戏本. 雷神911 Pro ...

  7. 雷神开机logo更改_九代酷睿i9加持的性能怪兽 雷神911黑武士Ⅱ评测

    随着英特尔9代酷睿CPU的到来,品牌台式机也逐渐迎来了全新的升级,各大厂商也竞相抢占台式整机市场.而对于DIY组装机来说,相对于玩家门槛和售价又相对较高.国产台式机品牌雷神也抓住了这次契机,推出了&q ...

  8. thinkpad卡在logo界面_联想logo [联想笔记本开不了机卡住logo界面如何解决]

    有时候我们会遇到笔记本电脑开机之后,电脑一直停留在Logo界面的问题,怎么办?下面是小编为大家整理的关于联想笔记本开不了机卡住logo界面的相关资料,希望对您有所帮助! 联想笔记本开不了机卡住logo ...

  9. bitdock系统错误_BitDock开机启动失败怎么办?给你两种解决方法

    最近很多BitDock的用户反映电脑开机的时候,BitDock老是启动失败.出现这样的情况,也尝试过手动将BitDock启动,可是都以失败告终,搞得电脑桌面的快捷方式又恢复到原来杂乱无章的模样了.那么 ...

  10. 小米手机html无法,小米手机无法开机进入不了桌面怎么解决 两种办法解决小米手机无法开机问题...

    小米手机无法开机进入不了桌面怎么办,出现无法开机我们一个是可以刷机来解决,另一个临时办法就清除数据恢复出厂设置试一下,具体的两种解决无法开机问题,下面小编都为各位介绍 注意:不管是什么原因导致你手机无 ...

最新文章

  1. 开发Java,市值一度超过两千亿美元,造福无数程序员的Sun公司,也最终“陨落”...
  2. python语言命令大全-Python常用命令之集合
  3. javascript Windows对象(BOM)
  4. 使用dumpsys检测Activity任务栈
  5. PHP经验总结(一)序言
  6. 【网摘】Oracle Dedicated server 和 Shared server(专用模式 和 共享模式) 说明
  7. Python特殊语法:filter、map、reduce、lambda
  8. 中班机器人上课视频_家委会:出班费买智能扫地机器人,不用家长搞卫生了,莫名其妙...
  9. B端产品如何寻找竞品?
  10. 信息学奥赛一本通(1194:移动路线)
  11. PHP中通过Web 执行C/C++应用程序
  12. python用于标识类方法的是_Python类的设计与使用
  13. MCMC算法—MH算法的Python实现(一)
  14. 数据产品-广告投放数据打通
  15. matlab 进行时域分析实验报告,控制系统时域分析实验报告.doc
  16. java blob 保存文件_java将文件保存为二进制流到oracle表中的blob字段 | 学步园
  17. qt、adb、小米屏幕滑动demo
  18. 怎么通过Unity和谷歌纸盒做一个VR游戏?(译)
  19. linux具有写保护权限的文件,细说Linux权限
  20. 艾美捷SequENZ测序级改造型胰蛋白酶特异性和应用

热门文章

  1. gdi win7奔溃_gdiplus.dll 32/64位
  2. 计算机复试面试题总结
  3. STA series --- 3.Standard cell library(PART-III)
  4. zec挖矿(zcash挖矿)鱼池跟蚂蚁矿池的比较到底哪个好?哪个收益高? (二)
  5. 电磁兼容性(EMC)标准EN55032IT设备要求
  6. JAVA读取配置文件工具类
  7. 使用 webSocket 连接菜鸟打印(并获取当前电脑连接的打印机信息)
  8. 【MOS】Redundant Interconnect ora.cluster_interconnect.haip (文档 ID 1210883.1)
  9. 夜弦网页游戏专用浏览器(支持最小化隐藏后台多开挂机)
  10. MogileFS原理