2025-02-15

Android編譯完成後,將在根目錄中生成一個out文件夾,所有生成的內容均放置在這個文件夾中。

 

out文件夾目錄結構如下所示:
out/
— CaseCheck.txt
— casecheck.txt
— host
    — common
    — linux-x86/darwin-x86
— target(如果編譯時候定義TARGET_STRIP_MODULE=false的話,這個目錄為debug/target)
    — common
    — product
主要的兩個目錄為host和target,前者表示在主機(x86)生成的工具,後者表示目標機(模認為ARMv5)運行的內容。

host目錄的結構如下所示:
out/host/
— common
    — obj(JAVA庫)
— linux-x86/darwin-x86
    — bin(二進制程序)
    — framework(JAVA庫,*.jar文件)
    — lib(共享庫*.so)
    — obj(中間生成的目標文件)
host目錄是一些在主機上用的工具,有一些是二進制程序,有一些是JAVA的程序。

target目錄的結構如下所示:
out/target/
— common
    — R (資源文件)
    — docs
    — obj (目標文件)
        — APPS(包含瞭JAVA應用程序生成的目標,每個應用程序對應其中一個子目錄,將結合每個應用程序的原始文件生成Android應用程序的APK包)
        — JAVA_LIBRARIES(包含瞭JAVA的庫,每個庫對應其中一個子目錄)
— product
    — generic
        — android-info.txt
        — clean_steps.mk
        — data(存放數據的文件系統)
        — obj
            — APPS(包含瞭各種JAVA應用,與common/obj/APPS相對應,但是已經打成瞭APK包)
            — SHARED_LIBRARIES(存放所有動態庫)
            — STATIC_LIBRARIES(存放所有靜態庫)
        — ramdisk.img(內存盤的根文件系統映像)
        — root
        — symbols
        — system(存放主要的文件系統)
        — system.img(文件系統的映像)
        — userdata-qemu.img(模擬器使用的數據文件)
        — userdata.img(數據內容映像)
其中common目錄表示通用的內容,product中則是針對產品的內容。

摘自:zuolongsnail的專欄

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *