tiny4412开机动画、开机界面的定制 【原创】


关键词:Android linux 开机logo 开机动画

平台信息:
内核:linux3.0.68
系统:android/android5.1
平台:tiny4412

作者:庄泽彬(欢迎转载,请注明作者)

邮箱:2760715357@qq.com

摘要:最近晚上回到宿舍有点无聊,搞一下打发时间,如有不对之处欢迎指点。

一、

1、首先讲解一下如何修改Android系统的开机的第一幅logo

首先要让内核支持开机显示Logo:

make menuconfig选中这三项

2、首先我们要明白的一点就是:内核镜像无法存储图片格式的文件,只能将图片转化为数组,然后将数组编译进内核 所以按照相应的工具。

  2.1sudo apt-get install netpbm 转化成ppm格式图片所需要的工具

  2.2sudo apt-get install imagemagick 将bmp格式的图片转化成png以及调整图片大小的工具。

  2.3 现在开始动手准备一张png格式的图片。 

0、convert -resize 800x480 logo.png logo-800-480.png       //根据屏幕的大小调整,我购买的开发板屏幕的大小为800*480

1、pngtopnm logo.png > logo_linux.pnm                      //转成pnm格式 

2、pnmquant 224 logo_linux.pnm > logo_linux_clut224_formal.pnm //转成224格式的图片 3、pnmtoplainpnm logo_linux_clut224_formal.pnm > logo_linux_clut224.ppm //转成ppm格式 放到

  2.4 我们在内核的make menuconfig当中添加一个选项当选中的时候才编译自己想要的图片进内核

   2.4.1 重命名转换之后的图片,cp logo_linux_clut224.ppm logo_zzb_clut224.ppm

   2.4.2 拷贝到对应的目录:cp /home/book/my_test/logo/logo-nexll/logo_zzb_clut224.ppm /work/linux-3.0.86/drivers/video/logo 要根据自己的linux源码目录去拷贝.

   2.4.3修改driver/video/logo/目录下的Makefile添加如下内容

    obj-$(CONFIG_LOGO_ZZB_CLUT224) += logo_zzb_clut224.o

   2.4.4修改driver/video/logo/目录下的Kconfig添加如下内核 

config LOGO_ZZB_CLUT224
        bool "ZhuangZeBin 224-color Linux logo"
        default n

   2.4.5修改修改driver/video/logo/目录下的logo.c文件添加如下内容

70 #ifdef CONFIG_LOGO_ZZB_CLUT224
71                 /* Generic Linux logo */
72                 logo = &logo_zzb_clut224;
73 #endif

  2.4.6修改修改vim include/linux/linux_logo.h文件添加如下内容

     extern const struct linux_logo logo_zzb_clut224;

  2.4.7 重新配置内核

  2.4.8重新编译内核make zImage -j2

2.4.9 实验结果:现在搞定了开机的第一幅图片

  

3、对于bmp格式的图片修改的方式跟上面的方式一样只是对图片的处理多了一步,在开始进行上面操作的时候先执行convert logo.bmp logo_linux.png 将图片的格式进行转换,转换成png格式。后面的操作跟前面的一模一样。

附上一张对bmp图片图片处理之后tiny4412开发板显示的结果:

二、讲解一下如何修改Android系统的开机动画,修改开机动画可以说是很简单的操作。

  1、首先要准备一个bootanimation.zip的压缩文件里面用于存放开机动画的每一帧的图片。以及相关的描述.

    1.1、adb push bootanimation.zip /system/media/ 将动画推送进设备

    1.2、adb reboot 即可看到我们定制的开机动画.

  2、了解bootanimation.zip包的内容:

1 cat desc.txt
2 480 272 30
3 p 1 0 part0
4 p 0 0 part1

    2.1 part0,以及part1文件内部存放了开机动画要播放的动画,需要注意的就是制作的时候图片的命名一定要按顺序命令。

    2.2 dest.txt 文件:480 272 分别对应图片的高度和宽度,30表示每秒播放30帧的图片。

    p 1 0 part0 : 1表示part0里的图片播放完一次之后还会在播放一次, 0 表示 播放完part0之后等待的多久之后播放part1里的图片。这里为0表示播放完part0的图片之后立刻播放part1内容的图片。

    如果第三个参数为60那么等待的时候为60/30 =2秒 (30由第1行得到),至于为什么这样计算,自己想吧,很 容易的。

3、可以去这里下载我 上传的开机动画:bootanimation.zip

     http://download.csdn.net/download/u013986340/9943999

    

  

  

优质内容筛选与推荐>>
1、jquery里面 text()和html()的区别
2、js鼠标右键操作
3、[bzoj3626][LNOI2014]LCA
4、js实现数据流(日志流,报警信息等)滚动展示,并分页(含实现demo)
5、[YY]已知逆序列求原序列(二分,树状数组)


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号





    联系我们

    欢迎来到TinyMind。

    关于TinyMind的内容或商务合作、网站建议,举报不良信息等均可联系我们。

    TinyMind客服邮箱:support@tinymind.net.cn