需求
客戶對于定制系統(tǒng)會(huì)要求使用自己的啟動(dòng)logo和開機(jī)動(dòng)畫
一、修改開機(jī)logo
1.開機(jī)logo
開機(jī)logo主要與kernel/drivers/video/logo下的logo_linux_clut224.ppm有關(guān)。
現(xiàn)kernel源碼內(nèi)一般以提供廠商的logo為主。
我們需要替換的文件也就是該ppm文件。
2.制作ppm
這里直接提供png轉(zhuǎn)ppm的sh腳本。前提是必須安裝了以下工具(pngtopnm,pnmquant,pnmtoplainpnm)
./png2ppm.sh XX.png
echo "$1"
pngtopnm $1 > logo.pnm
pnmquant 224 logo.pnm > logo_linux.pnm
pnmtoplainpnm logo_linux.pnm > logo_linux_clut224.ppm
rm *.pnm
3.替換ppm文件
用生成的同名ppm文件替換logo_linux_clut224.ppm。
同時(shí)刪除kernel/drivers/video/logo下的logo_linux_clut224.c和logo_linux_clut224.o
4.重新編譯kernel,打包新固件
二、修改開機(jī)動(dòng)畫
Android開機(jī)動(dòng)畫主要是由一個(gè)zip格式的壓縮包bootanimation.zip組成,壓縮包里面包含數(shù)張png格式的圖片,還有一個(gè)desc.txt的文本文檔,開機(jī)時(shí)按desc.txt里面的指令,屏幕上會(huì)按文件名稱順序連續(xù)的播放一張張的圖片。、
1.制作幀動(dòng)畫
這個(gè)一般flash制作或者選擇交給美工制作了。圖片張數(shù)盡量不要太多。
關(guān)鍵:圖片一定要按順序命名。

2.desc.txt文件
1188 624 25
p 1 0 part0
p 0 0 part0
重點(diǎn)在于desc.txt文件。
其中1188 624代表分辨率,表示幀動(dòng)畫以這個(gè)分辨率顯示。分辨率不是越高越好,容易造成開機(jī)卡頓,不流暢。
25表示的是幀數(shù),就是每秒播放的圖片數(shù)量。
p1(代表著播放一次) 0(空指令)part0 */這句指令就代表這part0文件夾內(nèi)的圖片只按名稱順序播放一次
p0(重復(fù)播放)0 (空指令)part1 */這一句指令代表著part1文件夾內(nèi)的圖片會(huì)循環(huán)反復(fù)播放
3.打包成壓縮文件
打包要用zip格式,而不是rar格式。另外壓縮的時(shí)候壓縮方式要選擇存儲(chǔ)。將壓縮包名修改為bootanimation.zip。
4.使用驗(yàn)證開機(jī)動(dòng)畫
1)可直接將生成的bootanimation.zip放入設(shè)備/system/meida目錄下重啟驗(yàn)證開機(jī)動(dòng)畫效果。
2)源碼上可直接將bootanimation.zip拷貝至/out/target/product/rk3288/system/media目錄下,最終打包進(jìn)成型固件中。