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