這篇文章給大家介紹如何深入剖析Android代碼結構,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
當我們在對Android操作系統進行編程后,會產生一個結構嚴密的Android代碼結構,那么大家可以從這篇文章中對這一結構進行詳細的分析,以此為參考,來加深大家對這一操作系統的認識,方便大家今后的開發。
Android編譯完成后,將在根目錄中生成一個out文件夾,所有生成的Android代碼結構內容均放置在這個文件夾中。out文件夾如下所示:
out/ -- CaseCheck.txt -- casecheck.txt -- host -- common -- linux-x86 -- target -- common -- product
主要的兩個目錄為host和target,前者表示在主機(x86)生成的工具,后者表示目標機(默認為ARMv5)運行的內容。
host目錄的結構如下所示:
out/host/ -- common -- obj (JAVA庫) -- linux-x86 -- bin (二進制程序) -- framework (JAVA庫,*.jar文件) -- lib (共享庫*.so) -- obj (中間生成的目標文件)
host目錄是一些在主機上用的工具,有一些是二進制程序,有一些是JAVA的程序。
target目錄的Android代碼結構如下所示:
out/target/ -- common -- R (資源文件) -- docs -- obj (目標文件) -- product -- generic
其中common目錄表示通用的內容,product中則是針對產品的內容。
在common目錄的obj中,包含兩個主要的目錄:
APPS 中包含了JAVA使用程序生成的目標,每個使用程序對應其中一個子目錄,將結合每個使用程序的原始文件生成Android使用程序的APK包。
JAVA_LIBRARIES 中包含了JAVA的庫,每個庫對應其中一個子目錄。
在默認的情況下,Android編譯將生成generic目錄,如果選定產品還可以生成其他的目錄。generic包含了以下內容:
out/target/product/generic/ -- android-info.txt -- clean_steps.mk -- data -- obj -- ramdisk.img -- root -- symbols -- system -- system.img -- userdata-qemu.img -- userdata.img
在generic/obj/APPS目錄中包含了各種JAVA使用,與common/APPS相對應,但是已經打成了APK包。
Android術語列表概覽
Android讀寫文件正確實行方法介紹
Android實現全屏正確方法介紹
Android浮點基礎概念淺談
Android性能在實際開發中優缺點評比
system目錄是主要的文件系統,data目錄是存放數據的文件系統。
obj/SHARED_LIBRARIES中存放所有動態庫。
obj/STATIC_LIBRARIES中存放所有靜態庫。
多個以img為結尾的文件是多個目標映像文件,其中ramdisk是作為內存盤的根文件系統映像,system.img是主要文件系統的映像,這是一個比較大的文件,data.img是數據內容映像。這多個image文件是模擬器運行時真實需要的文件。
關于如何深入剖析Android代碼結構就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。