linux下的android開發(fā)自定義rom編譯源碼制作_第1頁
linux下的android開發(fā)自定義rom編譯源碼制作_第2頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

CSDN首 資 博客 搜索 您還未登錄!|登錄||幫助[公告 重寫,將于9月正[公告 重寫,將于9月正式上SDCC軟件開發(fā)者大會:編團隊火用開 構(gòu)建自己的云——OpenStack征稿啟 5折限時搶購移動開發(fā)者大會門票編譯Android源碼制作ROM分類:android開 2011-12-0510:061239人閱讀評論(1)收:19912積分:524:第16746:24 :63譯文:0 評論:6文章搜文章分formyN900(5)超頻積累s60v3開發(fā)其他文章存2012年08月2012年07月2012年05月2012年03月2012年02月展閱讀

ndroid源碼編譯后,在out/taret/prdut/enerc生成三個鏡像文件radisk.i,syste.im,userata.i以及它們對應(yīng)的 樹root,system,data。adik.i是根文件系統(tǒng),syste.im包括了主要的包、庫等文件,userdatai包括了一些用戶數(shù)據(jù),android加載這3個映像文件后,會把system和usedaa分別加載到radik文件系統(tǒng)中的system和data 下。三個鏡像文件及其三 樹之間的生成關(guān)系是我們進行ROM制作的基礎(chǔ),下面將做詳細介紹#fileramdisk.img輸出#ramdisk.img:gzipcompresseddata,from為了便于說明問題 ramdisk.img拷貝到其它一 ,然后按以下步驟將ramdisk.img還原 樹#mvramdisk.imgramdisk.img.gz#gunzipramdisk.img.gz#cdramdisk#cpio–i–F這樣,就得到一個完整的radisk ,與out/taret/product/eneric/root對比后,我們發(fā)現(xiàn)它們是一樣的內(nèi)容。通過執(zhí)行以下的操作,我們可由 樹再生成radisk鏡像#cd#find.|cpio-o-Hnewc|gzip>../ramdisk-new.imgsystem.img&userdata.img這兩個鏡像都屬于yaffs2文件格式,生成方式是一樣的。我們就以system.img為例來說明System.img>> 地址http #mkdirsystem#cd#unyaffs../system.img 所需工具mkyaffs2image,Android源碼編譯后會生成該工具,在out/host/linux- 下命令格式 #~/Code/cbin/mkyaffs2image~/Code/system~/Code/system_new.img了解以上方法的意義在于,我們可以對鏡像文件鏡像修改,定制,以符合自己的需求android聯(lián)機調(diào)試相 編譯Android源碼制作RO AndroidROM的制作方android的發(fā)送全過startManagingCursor注androiddrawText[教學(xué)PCEVA超頻寶典之a(chǎn)ndroid開機動畫修改簡述Android發(fā)送

網(wǎng)上有很多制作AndroidROM的,這里羅列一些北理工的寫的兩篇文章,是我目前發(fā)現(xiàn)的最好的,寫的非常詳.html.html這兩篇文章參考了國外的幾個經(jīng)典:Android反編譯資料評論AndoridLauncher程序代將androidlauncher2導(dǎo)入android 發(fā)送全linux環(huán)境變量相關(guān) shape漸變!描邊!圓角推薦文PHP超時處理全面總評論startManagingCursor注fedorayang:轉(zhuǎn)到空間細細看kirainstorm:systemLibrary

/wki/index.php?title=HOWTO:_Unpack%2C_Edit%2C_and_Re-國內(nèi)還有一篇文章寫的也不錯,這篇文章更側(cè)重于制作類似Patch的ROM 這里基于自己的理解和測試,總結(jié)了一些方法步從可用的ROM起Android的ROM包通常稱為update.zip包,你可以到 文這是編譯內(nèi)核源代碼生成的內(nèi)核映像,然后與nodrai.i一起通過oi工具創(chuàng)建出來的,圖省事的朋友也可以從網(wǎng)上其他的刷機包里面拷貝一個能用的出來即可,基本上都差不多。META- 這 就是編譯android的平臺源代碼生成要創(chuàng)建自己的ROM,我們通常會涉及到以下的一些工作如,你要做一個22ke.i。ramdisk.img的修改。ramdisk.img是根文件系統(tǒng),里面包含了啟動配 update-script的修改System的修改我們先做個簡單的測試工作,來為后面更復(fù)雜的工作做好鋪墊。測試內(nèi)容為:先對zip進行解包,然后分別ramdisk和system的 下添加一個小文件,接著,生成新的ROM,并驗證ROM是否可用詳細的步驟可以參考 .htl要的,文及網(wǎng)上許多類似提到的方法都是針對TC1或exusoe的。而我在測試的時候,用的是TC3ero。以上的方法導(dǎo)致的一個是,重新打包后再燒錄,機器無法正常啟動,adbs也無法登陸。后來在國外的一篇博客上看到了對此問題的說明,問題的根源很簡單,從3開,打的時候需指定“--base”參數(shù)。對于ero,參數(shù)為”--base0x ”,但對于其它型號的機器,”--base要設(shè)定為多少,需要參考內(nèi)核代碼的實現(xiàn)。 完成unpack-bootimg.pl,repack-bootimg.pl。其中打包 下。unpack-bootimg.pl可直接將boot.img生成內(nèi)核鏡像boot.img-kernel和ramdisk樹boot.img-ramdisk。repack-bootimg.pl可將boot.img-kernel和boot.img-ramdisk重新生成boot.img。在解包后,我們在raikstem 下,各添加一個測試小件(譬如叫yst)。做完這些開始組包,重新成updat.zip。到這里我們的工作并沒有完全結(jié)束,還有最后的一步——簽名。簽名需要用到簽名工具testsin.ar,這是一個基于java1.6版本的工具。在編譯ndroid源碼的時候,我們強調(diào)要用java1.5。在這里,我們必須切換到16版本。切換辦法見這里。將前面解包得到的boot.img-ramdisk和編譯源碼后out/target/product/generic/下的root 2)創(chuàng)建一個 ##mkdir-/刪除 下的“符號”,創(chuàng)建update-updae-sript語可參考這里。研原update-scit,我們可以大致看出update-scrpt負責(zé)文件刪除拷貝,權(quán)限設(shè)置,符號創(chuàng)建等工作。我們可以在原有pdat-scipt的基礎(chǔ)上進行修改以得到我們自己的updatescrpt。這里,我們要注意的是,要保證update-sciptlink創(chuàng)建成功,必須把/syste/bin下的link刪除我們可以一個來做這個作delsylink。我修改后與自己編譯的ndroid2.2sstem 樹相匹配的本重新打包并簽 在試驗過程中,我經(jīng)常遇到如下的報Can't問題原因:當(dāng)update-script中有命令操作錯誤, 創(chuàng)建一個Patch功能的很多時候,你并不需要創(chuàng)建一個完整的包。你需要的只是,添加刪除或修改一些功能(應(yīng)用,或者你想添加bbx工具)我用一個簡單的例子來說明這個過程。該例子是在yem 下加一個yst文件,同時創(chuàng)建一個指向這個件的符合 yik。以下是過程: ,并在 下執(zhí)#mkdir#mkdir–p 2)在system 3) /android創(chuàng)建如下的update-show_progress0.1copy_dirPACKAGE:systemsymlinkmytestSYSTEM:mylinkset_perm000755SYSTEM:mytest如果前面的3步曲,你已經(jīng)很好的掌握了,應(yīng)付你的日常工作應(yīng)該沒有太大的問題。但要成為真正的RO高手,你還有很多東西要 。你要了解整個啟動過程,內(nèi)核編譯,ndroid源碼的編譯及配置,文件系統(tǒng)及啟動配置。。Android機T的官網(wǎng)上有一篇文章這里recoery模式,fastoot模式。通過一些組合鍵,可以進入燒錄模式。以TC3ero為例,“oe+oer”同時按,可以進入ecovery模式,“ack+oer”可以進入fastbot模式。Recovery模式比較常用,它相當(dāng)菜單界面的模式。直接把前面所述的update.zip文件放到SD卡上,然后通過在機器上操作控制菜單,就可完成燒錄。Fastboot是基于命令行的較低級的模式,它可直接燒錄.img文件。Fastboot工具也在out/host/linux-x86/bin下。在我測試過程中,發(fā)現(xiàn)fastboot模式無法燒錄,當(dāng)我試圖燒錄system.img的時候,出現(xiàn)下面的出錯信#fastbootflashsystem#writing'system'...INFOsignaturechecking...FAILED(remote:signatureverifyfail)在網(wǎng)上查了之后,發(fā)現(xiàn)這和簽名有關(guān)系,L要重新刷一下才可,默認是L-on,即檢測簽名,改成L-off,就不會出現(xiàn)這個問題,目前沒有什么好辦法來處理這個問題。好在recovery模式已經(jīng)能很好地滿足需求了,可以先放棄fastboot。如果你通過recovery模式燒錄后,發(fā)現(xiàn)系統(tǒng)無法正常啟動,沒有關(guān)系,recovery還是可以進去的。在recovery模你以過adbs 登陸機器??赡苣氵M去后,發(fā)現(xiàn)D卡并沒有掛接上來(執(zhí)行ount就可以查看掛載情況)。但recovry模式要求update.ip須卡根 下,怎么辦?很簡單,執(zhí)行“ount–a”就可把D卡區(qū)域掛接上來。如果這招也不行,還有一招,就是把userdata分區(qū)手動掛接到sdcard ,這樣就騙過了recovery。#mount/dev/mtdblock5然后,你再用adbpush把新的update.zip拷貝到sdcard ,重新進行燒錄。一般來說,在執(zhí)行“Flashzipfrom如何更新可以參考h /viethradphptid6673,按照這個攻略,把自己的3ero更新成了recover--hero-v1..2-lue.i。不過,一般無特別的需求,最好不要更新recovry一風(fēng),成板。其它參考信息知名的Android國內(nèi) /,有很多對Android的研究專題 Android文件系 /linux/l- Androidinit 上一篇:shape漸變!描邊!圓角!漂亮的自定義背 到下一篇:android查看評1樓mfh0952152012-08-02挺有意思的!有空專區(qū)推薦內(nèi)容您還沒有登錄,請[登錄]或?qū)^(qū)推薦內(nèi)容

招聘職 我公司職

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論