為手機定製ROM 分類: Android 2013-07-28 15:41 1868人閱讀 評論(0) 收藏 舉報
一、修改化定製Android4.0系統
Android系統啟動時,先載入Linux內核,在Linux的framebuffer驅動里可以定製開機界面,Linux內核啟動成功後,掛載根文件系統,啟動Android系統,這個時候設備屏幕上開始出現滾動的Android動畫,等全部的Android服務啟動完畢之後,開始啟動Android的HOME界面,也就是桌面。
而在這個過程中,我們可以將開機界面和Android動畫全部定製為自己需要的效果。
在整個開機過程中,屏幕上會出現三次內容:
Linux啟動時畫面,通常是個黃嘴的小企鵝
Android系統本地啟動階段畫面,是「ANDROID」文字字樣
Android系統顯示系統啟動階段動畫,是滾動的ANDROID動畫
我們下面將三個過程中的屏幕內容都進行個性化設置。
1. 定製手機開機界面
根據前面文章介紹,我們要在Linux的framebuffer驅動里修改一些代碼,讓屏幕上出現我們自己的一個開機圖片,如下圖所示效果。
在Linux系統中,LCD顯示設備的驅動都是基於framebuffer的,framebuffer我們可以看成是Android的顯存,只要我們向該顯存里寫入數據,這些數據就可以顯示在LCD上。
根據不同的LCD所支持的顏色可以分為:16位色,24位色,32位色。
學過初中物理都知道,色彩由三元色:紅(R),綠(G),藍(B)組成。
16位色:一個像素點由16bit表示,佔兩個位元組,RGB組成分為:565或555二種
24位色:一個像素點由24bit表示,佔三個位元組,RGB每個顏色由8位組成。
32位色:一個像素點由32bit表示,佔四個位元組,除了RGB每個顏色8位外,還有8位的Alpha的透明度,共組成32位。
很明顯,位數越高,可顯示的色彩越豐富,相同像素的LCD佔用的顯存越大,現在手機和平板基本上都使用32位色的LCD。
Android模擬器里使用16位565格式顯示驅動。
既然如此,那麼出現在framebuffer里的應該是16位的具體顏色值,我們從怎麼知道一個圖片的RGB的值呢?
還好,我們使用一款叫Image2Lcd的軟體,可以將一個指定的bmp點陣圖格式圖片轉換成指定的RGB格式數據的數組中。
如下圖所示:
選擇好圖片,設置好寬度和高度及顏色位數,保存成一個頭文件mylogo.h,打開裡面內容如下:
[cpp] view plaincopy
※定製傢具流程
※315品質消費 讓全屋定製營造美好的生活
※全屋定製的傢具千篇一律?對於定製,你是不是有什麼誤解?
※狗年4大家裝新趨勢 「定製」上行空間大
※從手機殼開始
TAG:手機 | 定製 |