Android 台灣中文網
標題:
Android移植教程
[打印本頁]
作者:
jianlin3062
時間:
2011-11-16 08:40
標題:
Android移植教程
其實移植並不難,主要看你有沒有耐心。比如我拿MOTO XT701來舉例
這裏以目前CM7系列2.3.7版本系統爲基礎,其他系統略有不同。
要移植,就要了解系統的結構和打包解包:
打包很容易,只需要制作成ZIP格式的壓縮包就行了,裏面包含2個文件夾和1個boot.img文件,boot.img是內核,沒有內核的系統是不能運行的,另外兩個文件夾一個是system,也就是Android系統所在地,另一個是META-INF,這裏一般存放是刷機腳本,我們移植一般需要改的就是system文件夾裏的內容。
解包就是解壓縮。
首先說結構,system下有:
App文件夾
(存放內置軟件的地方,每個軟件都有自己的名字標注著,很容易識別,在移植上除USB.apk必須用咱們自己的版本以外,其他可以用同分辨率機型的APP直接替換)
Bin文件夾
(本文件夾一般存放的是開機運行的腳本和一些系統必備代碼,一般移植出了問題不能開機就是這裏的問題,一般我們用702的或者720的ROM裏的,注意除了NETD需要用701的外,其他也可以直接用702或者720ROM的,不過一般系統升級不會修改這裏,在移植的時候,要刪除2nd-init以及所有.sh腳本文件,這些對701是沒有效果的,如果電池顯示?,那麽可以通過替換battd文件來修複)
Etc文件夾
(本文件夾裏存放著這種配置文件,包括WIFI,藍牙和基帶{\etc\motorola\bp_nvm_default}配置文件,A-GPS的文件和Hosts文件也在這裏,media_profiles.xml可以控制錄像質量,cameraCalFileDef5M.bin與cameraCalFileDef8M.bin是照相的數據庫文件,都可以修改,子文件夾init.d文件夾下可以寫入自己的開機腳本,來實現一些程序或者腳本開機啓動,如果想要執行某模塊,可以添加一個文件,不要有後綴名,格式爲00aaa 00是執行序號,系統開機時會按順序執行,aaa是爲了區別每個腳本的名稱,可以隨便寫)
Font文件夾
(字體文件夾,沒什麽好解釋的,你可以替換爲你喜歡的字體)
Framework文件夾
(系統框架結構文件目錄,這個目錄下是系統服務和系統界面的所在地,一般不可以單獨替換,要移植的話必須全部替換,不然會卡M,framework-res.apk文件就是系統語言,界面的所在文件,修改他就可以直接修改系統界面,framework-res.apk必須與app文件夾中systemui.apk配套,不然開機會出現狀態欄FC,不同版本不可以亂用,比如CM7.1.0.5不能用CM7.1.0.4的文件)
Lib文件夾
(本文件夾是系統所需要用到的驅動,庫文件的所在,如果某程序FC或者無法正常運轉,可能是這裏的問題,我把我知道的一些文件的用途說一下:
***Lib/dsp文件夾 DSP驅動所在,一般不需要改
***lib/egl 顯示芯片驅動,一般不需要改
***libaudio.so 話筒及音頻驅動 必須用701的
***libaudioflinger.so 音頻附屬驅動 必須用701的
***libbridge.so 相機方面
***libbattd.so 電池驅動
***libcamera.so 相機驅動 必須用701的
***libcameraservice.so 相機服務驅動
***libfmradio.so FM驅動
***libHPImgApi.so 圖片接口驅動 必須用701的
***libLCML.so 未知驅動 必須用701的
***liboemcamera.so 相機驅動 必須用701的
***libOMX.TI.JPEG.Encoder.so 照片編碼器 必須用701的 否則照片黑
***libOMX.TI.AAC.decode.so 此類型的都是編碼器和解碼器驅動(多媒體)
除上述紅色文件必須用701外,其他文件可以直接用702或者720的。
Media文件夾
(鈴聲及開機動畫)
TTS文件夾
(文字轉語音文件夾)
Usr文件夾
(鍵盤文件與各類數據庫)
Xbin文件夾
(系統工具文件夾)
Build.prop文件
(系統參數文件,修改這裏可以調節系統部分參數與性能)
如:默認虛擬機大小,鈴聲延遲,系統版本等
一般來說只要遵循規律,由少至多移植,不會出現什麽問題,出現問題就從頭開始,多積累經驗,慢慢就會了。
作者:
shockl125
時間:
2011-11-16 20:42
哇
雖然我用不到 但讓我開了眼界
以前一堆人多簡單簡單 但卻又不說怎麼做
第1次看到有人PO出來
厲害!
作者:
min335
時間:
2011-11-17 00:25
終於有人詳細說明內容了,感謝囉!!
作者:
hung3527
時間:
2011-11-17 07:37
如此實用的文章,對於想要了解ROM包的作用的有心人真是助義良多,也希望您的用心換起對ANDROID先進可以製作出適合國人的各版漂亮又實用的ROM,或許國外的製作群有著強大的團隊支撐,但只要我們製作出更出色的實用包時,將更能顯示我們國人開發與創作的功力
感謝您的好文章.,,,推推推
作者:
q212162002
時間:
2011-11-27 11:17
感謝您詳細說明分享的好文章。
作者:
toki8520
時間:
2012-1-9 23:38
多謝版大的無私分享~^^
作者:
hortet1256
時間:
2012-1-10 10:32
這讓我更加了解到開發者的辛苦 也謝謝大大分享
作者:
cchhsu
時間:
2012-1-10 11:03
我好奇的是怎麼解 system的包
作者:
ahkeung
時間:
2012-1-12 02:14
thank you very much ,可否再說落去,好像少了一些
作者:
fanghuei
時間:
2012-1-12 22:26
雖然看得還不是很懂,但還是感謝版大分享此一資訊哦~
作者:
vantien
時間:
2012-1-28 23:18
天天學習,努力向上!
感謝分享!
作者:
w562313
時間:
2012-2-11 22:31
好強~~
通常都只看到一堆遊戲移植
但卻都不知道怎麼出現的
作者:
小小阿銘
時間:
2012-10-30 11:38
雖然看不懂 但也算是 大開眼界 有朝一日 可以派得上用場
作者:
marcow
時間:
2013-6-4 14:05
感謝版大分享此一資訊
作者:
tjsking
時間:
2013-6-4 17:04
對一個新手來說真是增益不少,辛苦了
作者:
aaa55
時間:
2013-6-4 17:11
感謝版大耐心解說~~
對我這個新手來說真的是大開眼界阿@@
突然覺得開發者每個人都很強!!!
作者:
mosiusze
時間:
2014-5-3 13:55
謝謝大大的分享摟
作者:
危險遊戲
時間:
2014-5-3 16:55
提示:
作者被禁止或刪除 內容自動屏蔽
作者:
alan125999
時間:
2014-5-25 08:43
感謝分享,馬上就來試試看
歡迎光臨 Android 台灣中文網 (https://apk.tw/)
Powered by Discuz! X3.1