PX2燒的系統也是android的時候,那麼修改logo的方式也就大同小異啦,樓主也比較閒,就來試試修改logo。php
你們都知道android啓動界面分三步,linux
一步是內核的啓動logo,android
而後是android的啓動初始化logo,ide
最後還有個啓動成功的開機動畫。工具
樓主一開始的理解是在PX2上的過程就是,先出現兩隻小企鵝,而後出現android的字樣,而後android這兩字會動一下,動畫
首先咱們先來改改內核的啓動logo,首先咱們進入內核的配置界面,在Device Drivers \ Graphics support \Bootup logo這一項若是不勾選的話,便不會有那兩隻企鵝。spa
而點進去能夠看到選擇的是Standard 224-color Linux logo 教程
這個選項,可見此圖片
時選擇的開機logo是這個圖片,咱們這時候能夠進入/kernel/drivers/video/logo這個文件夾以下,ip
裏面有logo_linux_clut224這個圖片,
此刻咱們即可以用別的圖片替換這個圖片就能夠改變開機界面了。而後這時候我先隨便找張PNG圖片,而後利用linux下的一些圖片轉換工具能夠把這張PNG圖片轉成可和開機logo同樣的圖片具體命令以下:
# pngtopnm linuxlogo.png > linuxlogo.pnm
# pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm
# pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm
注:上述命令須要安裝netpbm的工具包 sudo apt-get install netpbm
而後再把轉換好格式的圖片名字改程logo_linux_clut224替換掉以前那個文件夾裏面的那個文件,同時把裏面的.o和.c文件刪掉,而後從新編譯內核,從新燒錄kernel,而後重啓,便獲得以下結果,
ok,這樣內核logo就這樣修改ok了,可行,很簡單吧,
如今開始修改第二個logo,android的logo
這個咱們先看看源碼,在system/core/init這個目錄下init.c便定義了以下,在斷定initlogo.rle這個文件不存在後,便執行了下面代碼,即是顯示android這幾個字,
因此咱們便有兩種方式改變logo一種是改那個文字,一種是加一個rle文件,生成rle文件到方式也很簡單,首先準備一個PNG-24或png-32格式的圖片,便可用PS修改出來,即在
保存時選「保存爲 Web 所用格式」,而後在彈開的窗口上,「預設」項選擇「PNG-24」,保存爲android_logo.png。
而後使用了以下命令: convert -depth 8 android_logo.png rgb:android_logo.raw
./rgb2565 -rle < android_logo.raw > initlogo.rle
rgb2565這個工具通常在android/out/host/linux-x86/bin目錄下,若是沒有也能夠去網上下載一個,而後把權限給上去就能夠用了。
生成後,便把那個文件放在out/target/product/rkpx2/root下,而後開始wiki上的步驟編譯下來,先make -j4,而後在。/mkimage.sh生成固件,
可是樓主在燒錄這個固件後, 並無如期着看見這個界面,不事後面我修改了第三個界面後,發現根本就不存在第二個界面,樓主猜想也許是初始化時間過短,因此界面沒有顯示出來,或者說PX2的源碼中有將其忽略了,而樓主是用LCD屏的,而樓主的一位朋友用VGA顯示,是能夠正常顯示的,因此說這步理論上也是可行的,最後生成的rle文件是包含在out/target/product/rkpx2目錄下的ramdisk.img下的,而後生成固件的時候加在boot.img這個固件下。
第三步是動畫,這一步有不少種方法,最簡單的方法是隻須要把對應的開機動畫文件bootanimation.zip用adb工具push進板中/data/local目錄下,而後重啓即可以實現,顯示以下,
使用的開機文件也在附件中,而如你們想知道如何製做這個bootanimation.zip,這個百度上也已經有具體教程,而關於這部分具體代碼位置能夠參考原帖:http://bbs.chipspark.com/forum.php?mod=viewthread&tid=8121&extra=page%3D1。而後全部android的開機全部界面就這樣啦,本人也是新手,講的很差也請指出。