Android 原始碼編後的目錄分析

來源:互聯網
上載者:User

標籤:

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

out檔案夾如下所示:
out/
-- CaseCheck.txt
-- casecheck.txt
-- host                //表示在主機(x86)產生的工具
    -- 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中,包含兩個重要的目錄:

out/target/obj/
--APPS                       (包含了JAVA應用程式產生的目標,每個應用程式對應其中一個子目錄,將結合每個應用程式的原始檔案產生Android 應用程式的APK包)
--JAVA_LIBRARIES      (包含了JAVA的庫,每個庫對應其中一個子目錄)



在預設的情況下,Android 編譯將產生generic目錄,如果選定產品還可以產生其他的目錄(根據預先設定的產品名命名)。

generic包含了以下內容:
out/target/product/generic/
-- data (存放資料的檔案系統)
-- obj(目錄中包含了各種JAVA應用,與common/obj/APPS相對應,但是已經打成了APK包)

-- root
-- symbols
-- system(主要的檔案系統)

-- Android -info.txt
-- clean_steps.mk
-- ramdisk.img
-- system.img

-- userdata.img

--userdata-qemu.img

obj/SHARED_LIBRARIES中存放所有動態庫。
obj/STATIC_LIBRARIES中存放所有靜態庫。
幾個以img為結尾的檔案是幾個目標映像檔案,其中ramdisk是作為記憶體盤的根檔案系統映像,system.img是主要檔案系統的映像,這是一個比較大的檔案,userdata.img是資料內容映像。userdata-qemu.img是模擬器使用的資料檔案,一般不用userdata.img,只有-wipe-data時才用到userdata.img。這幾個image檔案是運行時真正需要的檔案。

Android 原始碼編後的目錄分析

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.