本帖最后由 nihao200823 于 2017-1-12 20:38 編輯
android開機(jī)動畫制作與播放原理簡介
誰都想擁有一個華麗漂亮的開機(jī)動畫,這讓人心情舒暢,android是怎么來實現(xiàn)的?怎么制作一個自己的開機(jī)動畫?這里揭開android開機(jī)動畫的神秘面紗。
1、制作開關(guān)機(jī)動畫
1.1 開機(jī)動畫的位置
system/media/bootanimation.zip,要修改開機(jī)動畫就是修改bootanimation這個壓縮文件。如果不存在該壓縮包,使用原生自帶的資源,其路徑在system/framework/framework-res.apk/assets/images
(android-logo-mask.png,android-logo-shine.png),但是比較難看,比較常見的就是“android”。所以要定制自己的開關(guān)機(jī)動畫一般都是在system/media/目錄下放置bootanimation.zip和shutanimation.zip.這里以開機(jī)動畫為例,關(guān)機(jī)動畫和開機(jī)動畫其原理一樣。
更多內(nèi)容......
http://wenku.baidu.com/link?url=gNQkdlCUcZ5WHOpJD4eEAkasT3LeqICFAAKkrjO7uKr3Emf6bqUEAZVfL49ox6lZevAvkgEPplc1VRMiU-0KTkmZMbnIRBc6mfIozWSCi97
資料之二
在Android中的開機(jī)動畫有兩種,一種是默認(rèn)的Android文字顯示,還有一種是自定義的動畫。其主要實現(xiàn)的代碼在\frameworks\base\cmds\bootanimation中。這里主要說明添加自定義的開機(jī)動畫的方法: 添加自定義開機(jī)動畫就是把要顯示的動畫的圖片打包成bootanimation.zip文件。然后放到手機(jī)的“/data/local/”或“/system/media/”目錄下。開機(jī)時,系統(tǒng)會檢查這兩個目錄下有沒bootanimation.zip文件,如果沒有,則用默認(rèn)的Android開機(jī)動畫。 bootanimation.zip文件打包前的結(jié)構(gòu)為: desc.txt 動畫屬性描述文件 part0 第一階段動畫圖片的目錄 (動畫是由一幀幀圖片組成的) part1 第二階段動畫圖片的目錄 bootanimation.zip文件是直接由這幾個文件打包的,打包的格式是ZIP,并且要指定用壓縮打包方式(就是在打包時的壓縮方式選擇為存儲)。 desc.txt文件的格式為: 480 250 15 p 1 0 part0 p 0 10 part1 其中各個參數(shù)的意義為: 480 250 15 圖片的寬 圖片的高 每秒顯示的幀數(shù) p 1 0 part0 標(biāo)識符 循環(huán)的次數(shù) 階段切換間隔時間 對應(yīng)圖片的目錄 p 0 10 part1 標(biāo)識符 循環(huán)的次數(shù) 階段切換間隔時間 對應(yīng)圖片的目錄 標(biāo)識符:p 是必須的。 循環(huán)次數(shù):指該目錄中圖片循環(huán)顯示的次數(shù),0表示本階段無限循環(huán)。 每秒顯示的幀數(shù):就是每秒顯示的圖片數(shù)量,決定每張圖片顯示的時間。 階段切換間隔時間:指的是該階段結(jié)束后間隔多長時間顯示下一階段的圖片,其單位是每張圖片顯示的時間。 對應(yīng)圖片的目錄:就是該階段動畫的系列圖片,以圖片文件目錄的順序顯示動畫,而且圖片的格式必須要為PNG。
資料三 安卓自定義的開機(jī)動畫文件為bootanimation.zip在放在\system\media下,替換這個后就可以有自己個性的開機(jī)畫面,其實制作bootanimation.zip很簡單,也不需要什么PS功底不需要也不需要任何圖片制作功底,當(dāng)然有最好可以自己制作屬于自己專屬的。 bootanimation.zip文件介紹與構(gòu)成:開機(jī)動畫文件名稱:bootanimation.zip安卓Android的動畫是由一系列的連續(xù)PNG圖片作為幀組成的動畫形式。不是合成為一張GIF圖片,而是一個文件包,將各幀PNG圖片以壓縮方式保存。這個保存的文件名就是bootanimation.zip,這個文件是zip壓縮文件,壓縮方式要求是存儲壓縮,一般包含一個文件和兩個目錄: 1.動畫屬性描述文件:desc.txt--------這是一個保存形式為ANSI格式,用于設(shè)置這個動畫像素(大?。?,幀數(shù),閃爍次數(shù),文件夾名稱等; 2.第一階段動畫圖片目錄:part1-------存放每幀PNG圖片文件夾; 3.第二階段動畫圖片目錄:part2--------存放每幀PNG圖片文件夾; desc.txt文件設(shè)置解析: 我們打開這個文件夾,可以看到這樣的格式: 480 150 24 -----------------這里的480代表圖片的像素(大?。挾?,800代表圖片的像素(大小)高度,30代表幀數(shù),也就是圖片一共多少張; p 1 0 part1 -----------------這里的p代表標(biāo)志符,1代表循環(huán)次數(shù)為1次,0代表階段間隔時間為0,part1代表對應(yīng)的文件夾名; p 0 0 part2 -----------------這里的p代表標(biāo)志符,0代表循環(huán)次數(shù)為0次,10代表階段間隔時間為10,part2代表對應(yīng)的文件名; 標(biāo)志符:必須是: p 循環(huán)次數(shù):0 : 表示本階段無限循環(huán) 階段切換間隔時間:單位是一個幀的持續(xù)時間,比如幀數(shù)是30,那么幀的持續(xù)時間就是1秒/30 = 33.3毫秒。階段切換間隔時間期間開機(jī)動畫進(jìn)程進(jìn)入休眠,把CPU時間讓給初始化系統(tǒng)使用。也就是間隔長啟動會快,但會影響動畫效果。 part0和part1文件夾內(nèi)包含的是兩個動畫的系列圖片,圖片為PNG格式。系列圖片文件的加載刷新按文件名的名稱排序。 值得注意desc.txt力的數(shù)字是寫圖片的大小,而不是你手機(jī)大小,要不開機(jī)動畫就會跑偏了。 如果你不會制作圖片那么你可以先找2個動態(tài)圖片來,把這2個動態(tài)圖片分解出每一幀的圖片,并保存為PNG格式,記得2個圖片要一樣大哦,然后吧圖片按照bootanimation.zip的構(gòu)造放進(jìn)不同的文件夾,然后就可以制作出開機(jī)動畫bootanimation.zip。 如果你要自己做的話那么看下面教程: Fireworks為例,新建一張合適大小的圖片,然后到網(wǎng)上找個你覺得做開機(jī)動畫的圖片,插入到新建的圖片里,增加幀數(shù),使用第一幀復(fù)制到其他幀去,然后再每一幀進(jìn)行制作,其實跟制作動態(tài)圖片是一樣的,制作好后你可以預(yù)覽效果,覺得可以了就開始分解,不行的話繼續(xù)調(diào)整。 然后再新建圖片跟之前新建的大小一樣,有多少幀就新建多少個,把每一幀里的圖片全選,記得是全選后按順序復(fù)制到新建的圖片里,最后就是另存為PNG,這個也要按順序給圖片寫上編號。 然后依照這個方法再制造一個part1,就可以打包制作開機(jī)動畫bootanimation.zip了。
資料四圖文教程
http://jingyan.baidu.com/article/6c67b1d6f14fc92787bb1e1a.html
資料五 并非原創(chuàng),對應(yīng)盒子需要修改動畫圖片分辨率。
|