Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android開機畫面的具體修改方法

Android開機畫面的具體修改方法

編輯:關於Android編程

制作開機Logo
 方法一:
 Drivers/video/logo/logo_linux_clut224.ppm是默認的啟動Logo圖片,把自己的Logo圖片(png格式)轉換成ppm格式,替換這個文件,同時刪除logo_linux_clut224.c logo_linux_clut224.o文件,重新編譯
 具體方法:Netpbm
 #pngtopnm logo_linux_clut224.png > logo_linux_clut224.pnm
 #pnmquant 224 logo_linux_clut224.pnm > logo_linux_clut224.pnm
 #pnmtoplainpnm logo_linux_clut224.pnm > logo_linux_clut224.ppm
 注:先把png轉換成pnm格式,但內核的Logo最高只支持224色,需要把顏色轉換成224色,最後把pnm轉成ppm,文件名必須是logo_linux_clut224.ppm。
 方法二:
   用RedHat9.0自帶的圖片編輯工具GIMP(其他發行版自己安裝就行了)。
   1.將顏色數改為224(在GIMP中一次選擇 圖像->模式->索引。如下圖所示)。
   2.調整大小:寬高都小兩像素,否則不顯示。
   3.另存為,保存為ppm格式,在彈出的對話框中選擇Ascii,然後復制到Logo文件夾替換原來的文件,同時刪除logo_linux_clut224.c logo_linux_clut224.o文件。

   Android系統開機動畫包括兩部分:
   開機顯示的 ANDROID 文字;
   ANDROID發光動畫。
   這篇文章說的開機動畫是第一種,下面開始正文!
   1. 制作當前屏幕像素的圖片(模擬器默認為320*480)
使用PS制作一張320*480的圖片,保存時選“保存為 Web 所用格式”,然後在彈開的窗口上,“預設”項選擇“PNG-24”,保存為android_logo.png
    注:好像只支持png-24,其他格式生成的rle文件顯示不正常,有興趣大家可以再驗證一下。
   2. 將圖片轉換為raw格式
 使用linux下的ImageMagick自帶的convert命令,進行raw格式轉換,命令為:
   convert -depth 8 android_logo.png rgb:android_logo.raw
    注:ubuntu 10.04 默認已經安裝ImgageMagick工具,如果當前系統沒有安裝,可以執行下面的命令安裝:
   sudo apt-get install imagemagick
   3. 將raw格式轉化為rle文件
 需要用到android編譯後的rgb2565工具,在android/out/host/linux-x86/bin目錄下(android為當前源碼所在目錄),轉換命令如下:
rgb2565 -rle < android_logo.raw > initlogo.rle
   到目前為止,啟動需要顯示的圖像已經做好了,就是initlogo.rle,注意文件名必須是這個,如果想改文件名,需要修改android/system/core/init/init.h中的宏:
#define INIT_IMAGE_FILE "/initlogo.rle"
  ============================================================================================
   下面需要將initlogo.rle加入的android文件系統中
   4. 找到ramdisk.img文件(android/out/target/product/generic/ramdisk.img),將文件名改為ramdisk.img.gz,然後使用下面的命令解壓:
gunzip ramdisk.img.gz
解壓後得到ramdisk.img,可能有人要問,怎麼文件名又改回去了?其實不然,使用file ramdisk.img查看一下就知道了:
 解壓前:ramdisk.img: gzip compressed data, from Unix
解壓後:ramdisk.img: ASCII cpio archive (SVR4 with no CRC)
跑題了,還是說正事兒。
   5. 使用cpio提取文件:
 新建一個temp目錄:
mkdir temp
 cd temp
 cpio -i -F ../ramdisk.img
   6. 導出文件列表:
cpio -i -t -F ../ramdisk.img > list     
   注:list是一個文本文件,裡面存儲了ramdisk.img的文件結構,我們需要在這個文件中加入initlogo.rle這一行,修改後的文件如下:
data
    default.prop
    dev
    init
    init.goldfish.rc
    init.rc
    initlogo.rle
   proc
    sbin
    sbin/adbd
    sys
    system

 7. 生成ramdisk.img
 cpio -o -H newc -O ramdisk.img < list
   注:根據list文件的描述,生成ramdisk.img文件
   8. 用ramdisk.img覆蓋sdk目錄下的ramdisk.img(android-sdk-windows/platforms/android-2.1/images/ramdisk.img),最好先備份一下。
   9. 啟動模擬器,就可以看到我們自己做的的開機界面了。

  ------------------------------------------------------------------------------------------------------------------

  開機第三屏(android動畫)
 編譯成功後在android源碼根目錄生成out目錄,
 修改android\out\target\product\sdkDemo\system\framework目錄下的framework-res.apk
 用winrar格式打開,替換assets\images裡的2張圖片即可

 開機第二屏(android字樣)
 1、選張320*480分辨率的圖
 2、將圖轉換成raw,用Advanced Batch Converter工具即可
 3、虛擬機android\out\host\linux-x86\bin目錄下執行
   ./rgb2565 -rle <android_logo.raw> initlogo.rle
 4、將initlogo.rle放置到android\out\target\product\sdkDemo\root下即可
    如果不放置 則顯示的是源碼init.C init.c.bak裡
 5、make firmware
 6、全部重燒

 開機第一屏(Linux企鵝圖樣)
 1、選張png格式的圖片,在Linux下執行:
 # pngtopnm logo.png > logo_linux.pnm
 # pnmquant 224 logo_linux.pnm > logo_linux_clut224.pnm
 # pnmtoplainpnm logo_linux_clut224.pnm > logo_linux_clut224.ppm
 將生成的ppm拷貝到drivers\video\logo目錄下
 如果想要修改菜單配置  可以在kernel目錄下執行make menuconfig
 進Device Drivers
 進Graphics Support
 進Bootop logo
 進standard 224-clor Linux logo選擇性加入圖片

U-boot開機logo的制作方法
 

  在有實現LCD顯示和LCD命令行終端的U-boot中,在左上角都有顯示一個logo,如果是atmel的芯片,就會有atmel的logo,三星的則是denx的logo。
   有的網友發郵件說想改成自己公司的Logo,而且如果是自己玩的話,改成自己喜歡的logo也爽阿。所以今天我做好了實驗,將簡單的修改方法總結如下:

--------------------------------------------------------------------------------
一、圖片的放置路徑
 

  所有的開機logo都放在了 /tools/logos 之下,你只需要將你的班子作對應的logo替換就好了。
 

  對於S3C2440,你只需要將denx.bmp替換成你想要的logo就好了。
 

  對於ATMEL的芯片,據說會顯示ATMEL的logo,所以替換那個logo即可。
 

  但是你所替換的logo必須和原來的大小、格式一模一樣,否則會出現u-boot使用過程中宕機重啟的後果。

二、圖片的大小標准


不同的logo對應不同的大小,這裡S3C2440所對應的是160*96分辨率的BMP圖片。

三、圖片的轉換腳本


  在制作圖片前,請您現確認您的Linux主機上安裝了Netpbm 工具包。如果是ubuntu,你可以直接用新立得安裝;如果是別的發行版,可以在 Netpbm主頁 下載源代碼編譯。
 

     將你想要的圖片裁減成160*96的JPG圖片,然後用以下的腳本處理一下就好了:

  #!/bin/sh
 #install Netpbm first
     jpegtopnm $1 | ppmquant 31 | ppmtobmp -bpp 8 > $2

使用方法: (腳本名) ( 待處理的JPG圖片名) (輸出文件名)

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved