search 登录 注册
arrow_back返回列表
ID:9928
light_modedark_modestarstar
Lv.1 韶华一笑间
edit_note帖子 92
stars积分 50
event加入 2011-02-06
安卓交流

安卓修改开机动画教程

schedule发表于 2013-03-20 22:31:00 visibility查看 619 chat_bubble回复 3
#1 楼主
开机画面,一般是分为2屏,当然也有3屏的说法,不管怎样,我这里说得就是最后的一屏,按照bootanimation的字面意思翻译,大概也就是开机动画的意思,那这就不说第几屏了,直接用“开机动画”这词。

首先,开机动画的地址:system\media\bootanimation.zip。。。要修改开机动画就是修改bootanimation这个文件。如果说你的手机里没有这个文件,那就是说明你用的是官方原始版本的rom开机动画没有被修改过,但这不碍事,没有就放一个进去,到时候想换回最原始的开机画面,也可以把bootanimation这个文件删了。官方最原始的开机动画在system\ framework\framework-res.apk\assets\images里面,里面主要是2张图片,高手可以去研究一下,说不定通过这个文件可以用代码实现动画的过程。

接下来,说说bootanimation.zip这个文件的结构。bootanimation里面主要包含一个desc.txt以及N个文件夹。而文件夹里面放着的就是你要的开机动画的图片。decs.txt的作用就是指导系统如何去执行你的开机画面。

下面继续说说desc.txt这个文档要怎么写。

先看例子,如果我的开机动画要用到2个文件夹,分别是part1和part2,。。。。我希望开机的时候,先把part1里面的图片都播放一遍,然后再循环播放part2里面的文件,直到进入系统。那么decs.txt文档的内容应该如下:

320 480 5

p 1 0 part1

p 0 0 part2

就这么多,现在解释一下这些命令吧。

第一行,320 480是代表你屏幕的分辨率,因为我们的胖6是320*480的,这就不多说了。后面的5是说:5帧每秒,不懂的可以这么理解,5是代表一秒钟播放5张图片。就这么简单。

第二行,p 1 0 part1。p应该是play吧,也就是播放的意思。1是播放一次。0是空指令,就是什么都不做。part1就是说,这条指令是针对part1这个文件夹的。整条指令的意思就是,播放part1里面的图片1次,然后什么都不做,马上进入*条指令。

第三行,p 0 0 part2。p依然是播放。第一个0这里是代表循环播放,第二个0和上面第二条指令一样,代表什么也不做。part2也就不多说了。

至于为什么第一个0为什么是代表循环,只能这么说,这事国际惯例,就像用迅雷的时候,0代表不限制速度一样,系统规定的,你知道就好,别纠结。

总结公式如下

第一条指令:屏幕的分辨率(空格)播放频率

第二条指令:p(空格)播放次数(空格)后续*作(空格)作用文件夹

第三条指令:同上

第N条指令:同上

屏幕分辨率的格式是:宽(空格)高,320 480。。。播放频率,上面已经说清楚了,至于到底要用多大的数字,视你开机动画的张数而定,比如说,一共有100张图片,开机时间是20秒,那么100/20就是5。

播放次数,1是代表一次,0代表循环播放。如果要播放2次的话,就是就是打个2上去,应该是这样吧,反正我是没试过,只试过0和1.后续*作,0代表什么都不做,直接进入*条指令。10是代表稍作停顿。

至于文件夹里面的图片,比较简单,首先,纠正一个说法,之前说必须要是png格式,经过我试验证明,jpg格式的也可以,其他的有待试验

全部回复 (3)

ID:76284
light_modedark_modestarstar
Lv.5 甘首五朝臣
2013-03-20 22:54:00 沙发
android
ID:26218
light_modestar
Lv.1 韶华一笑间
2013-03-21 06:56:00 板凳
你牛,可是这人人都会啊,有本事把修改第一屏教程发出来啊
ID:9928
light_modedark_modestarstar
Lv.1 韶华一笑间
2014-05-03 19:43:00 地板
首先我没说我牛,其次我只是想分享我会的技术。我看你蛮牛的
登录 后才能回复