Android开机动画文件分析与制作

本文转自安卓网-文星慧,原帖见:http://www.hiapk.com/bbs/thread-429466-1-1.html       

开机动画文件是bootanimation.zip,默认存放在system/media/下,我们自己也可放在data/local/下,如果是data/local/目录下有这文件,则会优先用这个,而且也不需要获取root权限就能放了。

       bootanimation.zip文件是zip压缩文件,压缩方式要求是存储压缩,包含一个文件和两个目录:
     1.动画属性描述文件:desc.txt
     2.第一阶段动画图片目录:part0
     3.第二阶段动画图片目录:part1

desc.txt文件内容:
    480 427 30
    p 1 0 part0
    p 0 10 part1
    
desc.txt文件分析:
    480  427   30
     宽   高    帧数
      p         1              0                      part0
    标志符 循环次数 阶段切换间隔时间  对应目录名
      p         0             10                     part1 
    标志符 循环次数 阶段切换间隔时间  对应目录名
    ==================
    标志符:
        必须是: p
    循环次数:
        0 : 表示本阶段无限循环
    阶段切换间隔时间:
        单位是一个帧的持续时间,比如帧数是30,那么帧的持续时间就是1秒/30 = 33.3毫秒。
        阶段切换间隔时间期间开机动画进程进入休眠,把CPU时间让给初始化系统使用。
        也就是间隔长启动会快,但会影响动画效果。

        part0和part1目录内包含的是两个动画的系列图片,图片为PNG格式。
系列图片文件的加载刷新按文件名的名称排序。

        有人问到开机动画能删不?我的联通版的亲测过是可以删的,两个目录下的都删后还是开得了机的,删除后会恢复成安卓系统自带的开机动画,开机速度感觉比原来联通的沃动画快了。个人觉得原因是:在间隔时间期间开机动画进程进入休眠,把CPU时间让给初始化系统使用的。而安卓系统自带的开机动画间隔时间比较长,因此就比较快了。

      以上说的是开机动画,有的人问道第一和第二个开机画面能改吗,在这我就简单的说下,理论上是可以的,但因风险太大,不推荐改,我说下这两个画面的位置吧,勇敢的就去试试改吧:

       第一个画面是解开app升级包后的splash.raw565。
       第二个画面是解开boot.img后的initlogo.rle。

     制作bootanimation.zip

     首先从里面的图片说起 图片一定要转换成PNG格式,建议找到的图片要和自己机子的分辨率一样(小u的是240*320),如果不是也可以的 有可能变形 注意图片的大小要统一(如果不会做连接的图片组 直接找个适合自己分辨率的动态图片分解出PNG格式的静态图片,用ImageReady可以批量导出)。

     建立part1 part2或android文件夹 放进一组连接的图片组。

     开始压缩成ZIP格式  名字一定要bootanimation.zip  压缩方式一定是存储     压缩完了看下大小一般最大的2MB左右 太大了用JPEG Imager压缩下 压缩图片很好的。

     开始写desc.txt 

     desc.txt 格式(解释看上面)
     有2个文件夹 part1、part2的话 
     如小u的代码可这样:
     240 320 15
     p 1 1 part1 
     p 0 0 part2

     保存后拖入bootanimation.zip里面OK,压缩方式要求是存储压缩. 

你可能感兴趣的:(Android开机动画文件分析与制作)