Andoid源码编译-Android源码编译完成后的代码目录结构
Android源码,你编译过了么?-----箴言-----
代码是最核心的内容。
Android源码是开源的,用户可以下载下来自行编译,下面是一份编译后的代码结构:
out/|-- CaseCheck.txt|-- casecheck.txt|-- host| |-- common| `-- linux-x86`-- target |-- common `-- product host目录的说明:out/host/|-- common| `-- obj (JAVA库)`-- linux-x86 |-- bin (二进制程序) |-- framework (JAVA库,*.jar文件) |-- lib (共享库*.so) `-- obj (中间生成的目标文件)target目录:out/target/|-- common| |-- R (资源文件)| |-- docs| `-- obj (目标文件)`-- product `-- generic在默认的情况下,Android编译将生成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
说明:
Andoid源码成功编译后,会在编译的根目录下生成一个out文件夹,存放了所有编译生成的内容;
(1)out目录下最主要的有两个目录:host和target,host表示在主机(x86)生成的工具,target表示目标设备运行的内容;
host目录存放的是一些在主机上用的工具,包括二进制程序和JAVA程序。
out/target/common: 通用目录。
在common目录的obj中,包含两个重要的目录:
APPS: JAVA应用程序生成的目标,每个应用程序对应其中一个子目录,将结合每个应用程序的原始文件生成Android应用程序的APK包。
JAVA_LIBRARIES: JAVA库,每个库对应其中一个子目录。
(2)out/target/product: 产品目录,其中
out/target/product/generic/:
在默认的情况下,Android编译将生成generic目录,如果选定产品还可以生成其他的目录。
generic/obj/APPS:各种JAVA应用,与common/APPS相对应,但是已经打成了APK包。
system:系统文件;
data:数据文件。
obj/SHARED_LIBRARIES:动态库。
obj/STATIC_LIBRARIES:静态库。
img文件:目标映像文件,可以烧录到设备中。
ramdisk:根文件系统映像;
system.img:系统文件映像;
data.img:是数据内容映像。