修改開機動畫的兩種方式剖析

首先,我們先來分析一下源碼:

frameworks/base/cmds/bootanimation/BootAnimation.cpp

首先看一下定義的常量:

BootAnimation::readyToRun()

進入一個if判斷語句

BootAnimation::threadLoop()

==> BootAnimation::Android()會載入"images/android-logo-mask.png"和"images/android-logo-shine.png"

==> BootAnimation::movie()會載入bootanimation.zip中的內容

我們下載的源碼里默認是沒有那些個.zip動畫的,所以總會跳到android字體閃動的畫面

所以如果你系那個用.zip的動畫那麼把你做好的動畫拷貝到編譯好對應的目錄下即可,然後執行make snod整合進img包就可以看到效果了

如果你想修改android閃動的那兩張圖片的話,最簡單的方法是直接替換圖片,如果你懂openGL的話也可以自己做酷炫的動畫

那兩張圖片放在./frameworks/base/core/res/assets/images 目錄下,一張鏤空的android圖,一張發光效果,動畫效果就是下面那張發光的效果圖不斷左右移動。

方法1:

直接修改~/mx0831-0525/frameworks/base/core/res/assets/images目錄下的圖片即可(這個動畫是由android-logo-mask.png和android-logo-shine.png合成的)。

方法2:(轉載於:http://blog.csdn.net/mlbcday/article/details/7410509)

Android開機動畫有兩種修改方法,android 2.0及之後,使用bootanimation程序顯示開機畫面,如需修改開機畫面,不用修改代碼,只需按格式要求做bootanimation.zip包,放在系統的/system/media目錄中,或/data/local目錄中即可,兩個目錄下都存在時,優先使用/data/local下的。android 2.0之前,則需要修改源碼。開機畫面主要是由一個zip格式的壓縮包bootanimation.zip組成,壓縮包裡面包含數張png格式的圖片,還有一個desc.txt的文本文檔,開機時按desc.txt裡面的指令,屏幕上會按文件名稱順序連續的播放一張張的圖片,就像播放原始的膠帶影片一樣,形成動畫。(1)動畫圖片製作。由於缺少橫屏動畫的源文件,本例採取的是使用屏幕錄像軟體錄製android模擬器中的橫屏開機動畫(如屏幕錄像專家V2011),然後在媒體播放器中捕獲每一幀(如KMPlayer),保存為PNG格式的圖片。這兩個軟體的使用方法比較簡單,可參考網上的使用說明。 根據個人喜好,如果替換成別的動畫方法也類似,如用flash製作好自己想要的動畫,按幀導出,然後按數字順序給文件編號就可以了。 圖片按照數字編號後統一放在一個文件夾下,本例中為part0。如下圖:

android平台默認豎屏掃描圖片,所以在這裡需要把圖片順時針旋轉一次。

(2)動畫屬性描述文件。desc.txt是一個保存形式為ANSI格式的文件,用於設置這個動畫像素(大小),幀數,閃爍次數,文件夾名稱等。內容如下:480 427 30p 1 0 part0p 0 0 part1

480 427 30---這裡的480代表圖片的像素(大小)寬度,427代表圖片的像素(大小)高度,30代表幀數;p 1 0 part0---這裡的p代表標誌符,1代表循環次數為1次,0代表階段間隔時間為0,part0代表對應的文件夾名,為第一階段動畫圖片目錄;p 0 0 part1---這裡的p代表標誌符,0代表本階段無限循環,0代表階段間隔時間為0,part1代表對應的文件夾名,為第二階段動畫圖片目錄;

階段切換間隔時間:單位是一個幀的持續時間,比如幀數是30,那麼幀的持續時間就是1秒/30 = 33.3毫秒。階段切換間隔時間期間開機動畫進程進入休眠,把CPU時間讓給初始化系統使用。也就是間隔長啟動會快,但會影響動畫效果。 part0和part1文件夾內包含的是兩個動畫的系列圖片,圖片為PNG格式。系列圖片文件的載入刷新按文件名的名稱排序。必須注意的是,在屬性描述完成後要有換行符(回車跳入下一行),已確保指令都已完成。(3)圖片和desc.txt文檔都準備好後,開始打包為bootanimation.zip。選中圖片文件夾part0和desc.txt(提醒一下:打包前將圖片文件夾中的Thumbs.db刪除),然後右鍵選擇WINRAR的"添加到壓縮文件"進入自定義壓縮文件設置:壓縮文件格式選擇:ZIP,壓縮方式選擇:存儲,然後點擊確定即可。

注意:/system/media是在/out/target/product/TBDG1073/system/media/下

http://blog.csdn.net/ouyang_peng/article/details/9564753


推薦閱讀:

懸疑巨制《十宗罪》28日震撼開機
《諜影重重4》9月開機 傑瑞米-雷納成新特工
如何通過開機引導頁看一款APP的逼格
黃永玉再出山,第四輪猴票開機啦!
網吧電腦關機再開機後系統會還原,怎麼做到的?

TAG:動畫 | 方式 | 修改 | 開機 |