一.设置LINUX内核启动LOGO

1、让内核支持启动LOGO

在内核目录中make menuconfig

Device Drivers ---->   Graphics support ---->

选中 Bootup logo ----> Standard 224-color Linux logo

2、制作开机logo的图片

将要当作开机LOGO的图片按照你屏幕的大小进行裁减,并将其保存为bmp格式或 png格式; 例如linuxlogo.bmp 或 linuxlogo.png

在linux下输入以下命令(for bmp):

#bmptoppm linuxlogo.bmp > linuxlogo.ppm                             //生成ppm

#ppmquant 224 linuxlogo.ppm > linuxlogo224.ppm                   //转换成224颜色

#pnmnoraw linuxlogo224.ppm > linuxlogo224.ppm//转换成ascii格式

在Linux下输入以下命令(for png):

# pngtopnm linuxlogo.png > linuxlogo.pnm

# pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm

# pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm

注:上述命令需要安装netpbm的工具包 sudo apt-get install netpbm

3、将LOGO文件放入内核中

拷贝到制作好的LOGO文件到/drivers/video/logo文件夹

替换 logo_linux_clut224.ppm文件,还要删除该文件夹下的logo_linux_clut224.o

4、重新编译内核make zImage 或 make uImage

二、修改android开机画面

Android系统开机动画包括两部分:

开机显示的 ANDROID 文字;

ANDROID发光动画。

======================================================================================================================

开机显示的 ANDROID 文字;

1、 制作当前屏幕像素的图片(模拟器默认为320*480),例如android_logo.png

使用PS制作一张320*480的图片,保存时选“保存为 Web 所用格式”,然后在弹开的窗口上,“预设”项选择“PNG-24”,保存为android_logo.png

注:好像只支持png-24,其他格式生成的rle文件显示不正常,有兴趣大家可以再验证一下。

2、 将图片转换为raw格式

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

convert -depth 8 android_logo.png rgb:android_logo.raw

注:ubuntu 10.04 默认已经安装ImgageMagick工具,如果当前系统没有安装,可以执行下面的命令安装:

sudo apt-get install imagemagick

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

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

rgb2565 -rle < android_logo.raw > initlogo.rle

将initlogo.rle文件放在android4.2\device\softwinner\【wing-k70】下,或是自己创建个目录将initlogo.rle文件放在改目录下,若直接放在【wing-k70】下,则要在该目录下的

ProductCommon.mk中添加PRODUCT_COPY_FILES += \

device/softwinner/wing-common/initlogo.rle:root/initlogo.rle \,表示将该目录下的initlogo.rle,一起打包到板子的根目录下(将会出现在android4.2\out\target\product\wing-k70目录下),若是自己创建的目录则要

PRODUCT_COPY_FILES += \

device/softwinner/wing-common/【your dir】/initlogo.rle:root/initlogo.rle \;

到目前为止,启动需要显示的图像已经做好了,就是initlogo.rle,注意文件名必须是这个,如果想改文件名,需要修改android/system/core/init/init.h中的宏:

#define INIT_IMAGE_FILE "/initlogo.rle"

============================================================================================

下面需要将initlogo.rle加入的android文件系统中

4、找到ramdisk.img文件(android/out/target/product/generic/ramdisk.img),将文件名改为ramdisk.img.gz,然后使用下面的命令解压:

gunzip ramdisk.img.gz

解压后得到ramdisk.img,可能有人要问,怎么文件名又改回去了?其实不然,使用file ramdisk.img查看一下就知道了:

解压前:ramdisk.img: gzip compressed data, from Unix

解压后:ramdisk.img: ASCII cpio archive (SVR4 with no CRC)

跑题了,还是说正事儿。

5、使用cpio提取文件:

新建一个temp目录:

mkdir temp

cd temp

cpio -i -F ../ramdisk.img

6、导出文件列表:

cpio -i -t -F ../ramdisk.img > list

注:list是一个文本文件,里面存储了ramdisk.img的文件结构,我们需要在这个文件中加入initlogo.rle这一行,修改后的文件如下:

data

default.prop

dev

init

init.goldfish.rc

init.rc

initlogo.rle

proc

sbin

sbin/adbd

sys

system

7、生成ramdisk.img

cpio -o -H newc -O ramdisk.img < list

注:根据list文件的描述,生成ramdisk.img文件

8、用ramdisk.img覆盖sdk目录下的ramdisk.img(android-sdk-windows/platforms/android-2.1/images/ramdisk.img),最好先备份一下。

9、启动模拟器,就可以看到我们自己做的的开机界面了。

================================================================================================================

开机动画(闪动的ANDROID字样的动画图片)

Android 的系统登录动画类似于Windows系统的滚动条,是由前景和背景两张PNG图片组成,

这两张图片存在于/system/framework /framework-res.apk文件当中。

前景图片(android-logo-mask.png)上的Android文字部分镂空,背景图片 (android-logo-shine.png)则是简单的纹理。

系统登录时,前景图片在最上层显示,程序代码控制背景图片连续滚动,透过前景图片文字 镂空部分滚动显示背景纹理,从而实现动画效果。

相关代码:

/frameworks/base/cmds/bootanimation/BootAnimation.h

/frameworks/base/cmds/bootanimation/BootAnimation.cpp

/frameworks/base/core/res/assets/images/android-logo-mask.png

Android默认的前景图片,文字部分镂空,大小256×64

/frameworks/base/core/res/assets/images/android-logo-shine.png

Android默认的背景图片,有动感效果,大小512×64

linux系统开机图片修改,linux开机logo 和 android开机logo 的修改相关推荐

  1. Linux系统磁状态检测,检测Linux硬件状态

    计算机系统是由软件系统和硬件系统共同组成的.检测硬件状态对于保障整个系统的稳定是非常重要的.不论操作系统是使用Linux.还是Windows,一旦硬件出现故障,那么整个系统的安全就严重了.这里我们主要 ...

  2. git 的安装以及使用:是一个开源的分布式版本控制系统,可以对项目进行版本管理。 早期是linux之父用来管理linux系统源代码的(linux是和windows一样操作系统 开源免费的操作...

    ## 总结 - 学会使用基本的git命令 管理源代码 - 学会去github创建仓库 并将代码上传到github的仓库 (有待完成 回家有网再push) - 了解本地的.git和服务器github的. ...

  3. 如何制作linux系统硬盘,手把手带你自制Linux系统之二 简易Linux的制作

    手把手带你自制Linux系统之二 简易Linux的制作 本文利用CentOS5.5自带内核制作一个可以正常启动的Mini Linux. 打开上一篇准备工作中创建的CentOS虚拟机,为另一台虚拟机Mi ...

  4. linux设置sfq队列参数,Linux系统运维之Linux高级流量控制工具TC使用方法

    Linux系统运维之Linux高级流量控制工具TC使用方法 本文标签: 运维 流量劫持 Linux系统运维之Linux高级流量控制工具TC使用方法, 在做MHA测试的时候,有一个重要的环节就是测试MH ...

  5. linux系统密码输入快捷,linux 系统忘记密码的快捷解决方法(图文详解)

    linux 系统忘记密码的快捷解决方法(图文详解) 在学习Linux的过程当中,想到,万一自己忘记了linux的密码该怎么办? 其实,在linux当中,只用简单的操作几步,就可以更改用户密码~下面小编 ...

  6. 用u盘装linux系统分区怎么画,linux安装教程,U盘安装Linux详细步骤图解。

    linux是免费开源的系统,经过多年的发展linux在应用方面已经有了很大的提升,很多工作都可以在linux下完成~如果你想要学习linux或是在linux下工作,那么需要把电脑安装成linux,如何 ...

  7. php 登录 linux服务器,如何实现linux系统远程登录到linux服务器

    linux系统登录到远程linux服务器: 有多种不同的协议可供选择,也许SSH是"最好"的.SSH是secure shell的简写,意为"安全的shell". ...

  8. 如何查看linux系统的存储空间大小,linux 如何查看硬盘大小,存储空间大小等系统信息及硬件信息...

    一.linux CPU大小 [root@idc ~]# cat /proc/cpuinfo |grep "model name" && cat /proc/cpui ...

  9. Linux系统-小倒腾之Linux DIY定制裁剪(New kernel+Busybox)o_o(二)

    在前面的<Linux系统-小倒腾之Linux DIY定制裁剪(附带简单网络功能)o_o(一)>博文中,我通过对一个Linux系统的裁剪,最终制作出来了一个带有网络功能的微型Linux系统; ...

  10. linux系统查看串口占用,Linux 系统串口信息查看

    先确认系统启动的时候串口的信息. ECM_5412@chenfl:~$ dmesg | grep tty [ 0.000000] console [tty0] enabled [ 2.511678] ...

最新文章

  1. NFS 文件共享的创建过程
  2. Chkconfig命令
  3. 「AlphaGo 之父」David Silver最新演讲,传授强化学习的十大原则
  4. pycharm如何设置快捷键
  5. CSS3伪类和伪元素的特性和区别
  6. 12行代码AC——UVa 151 - Power Crisis(约瑟夫环)
  7. python实战——发邮件
  8. java运费模板设计_猿实战17——实现你未必知晓的运费模板
  9. Unity List的拷贝
  10. 为什么列存储能够大幅度提高数据的查询性能?
  11. 不用再为机翻头疼!sci论文写作翻译神器推荐
  12. 彼得德鲁克《卓有成效的管理者》——阅读摘要
  13. 拼多多狂砸百亿补贴的iphone是真的吗?
  14. 在面试时应该如何自我介绍?
  15. 你知道吗?申报深圳市专精特新企业必须先申报创新型中小企业!
  16. Latex(Ctex)出现编译错误 ! Misplaced alignment tab character .
  17. 【文献阅读】A2-Nets: Double Attention Networks
  18. 无线热点(AP)不稳定之信道的配置优化实践-分析周围信道修改本地使用信道
  19. 更换人脸(易容术)Photoshop实例教程
  20. 数控加工中心导致丝杠振动的原因分析

热门文章

  1. Mysql的可视化工具整理
  2. centos6.9安装MySql可视化管理工具
  3. PS中有哪些快速抠图的方法
  4. LabVIEW学习笔记(1)
  5. 模糊控制算法实例matlab程序
  6. python读取文件格式化方法
  7. 用c语言编写清理c盘程序,C盘清理小程序制作
  8. linux变utf8为sjis命令,在派上编译Linux版Onscripter-jh时出现问题
  9. PDF阅读器阅读论文跳转到参考文献,如何返回
  10. Pandas高级教程之:Dataframe的合并