Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 初級開發 >> Android編譯完成後的代碼結構

Android編譯完成後的代碼結構

編輯:初級開發

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 (目標文件)
-- 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/obj/APPS相對應,但是已經打成了APK包。
system目錄是主要的文件系統,data目錄是存放數據的文件系統。
obj/SHARED_LIBRARIES中存放所有動態庫。
obj/STATIC_LIBRARIES中存放所有靜態庫。
幾個以img為結尾的文件是幾個目標映像文件,其中ramdisk是作為內存盤的根文件系統映像,system.img是主要文件系統的映像,這是一個比較大的文件,userdata.img是數據內容映像。userdata-qemu.img是模擬器使用的數據文件,一般不用userdata.img,只有-wipe-data時才用到userdata.img。這幾個image文件是運行時真正需要的文件。
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved