Android 代码的工程分为三个部分:
核心工程( Core Project )
建立 Android 系统的基础,在根目录的各个文件夹中。
扩展工程( External Project )
使用其他开源项目扩展的功能,在external 文件夹中。
包( Package )
提供 Android 的应用程序和服务,在package 文件夹中。
核心工程 :
bionic : C 运行时支持 : libc,
libm, libdl, 动态 linker
bootloader/legacy : Bootloader 参考代码
Build : Build 系统
dalvik : Dalvik 虚拟机
development : 高层的开发和调试工具
frameworks/base : Android 核心的框架库
frameworks/policies/base :框架配置策略
hardware/libhardware : 硬件抽象层库
hardware/ril : Radio interface layer
kernel : Linux 内核
prebuilt : 对 Linux 和 Mac OS 编译的二进制支持
system/core : 最小化可启动的环境
system/extras : 底层调试和检查工具
扩展工程
扩展工程( 1 ) :
aes : Advanced Encryption Standard ,高级加密标准
apache-http : ( JAVA ) Http 服务器
bison : (主机)自动生成语法分析器程序,基本兼容 Yacc
bluez : 蓝牙库
bsdiff : (主机)用于为二进制文件生成补丁
bzip2 : (主机 / 目标机)压缩文件工具
clearsilver : (主机)模板语言,包括 python, java, perl, c 的 lib 支持
dbus : freedesktop 下开源的 Linux IPC 通信机制
dhcpcd : 动态主机设定协定 的工具
dropbear : ssh2 服务器和客户端
e2fsprogs : (主机) Ext2/3/4 文件系统的工具
elfcopy : (主机) ELF 工具
elfutils : (主机) ELF 工具
扩展工程( 2 ) :
embunit : 嵌入式 C 系统的测试框架
emma : ( JAVA ) Java 代码覆盖检查工具
esd : (仅头文件)
expat : (主机 / 目标机) XML Parser
fdlibm : 精确实现 IEE754 浮点数
freetype : C 语言实现的字体光栅化引擎制作的的一个软件库。
gdata : ( JAVA )用于数据操作
genext2fs : (主机) Ext2 文件系统生成工具
giflib : GIF 工具
googleclient : ( JAVA ) Google 客户端
grub : 多重操作系统启动管理器
icu4c : IBM 的支持软件国际化的开源项目
iptables : 建构在 Xtables 的架构下,定义“表 (tables)” 、“键
(chain)” 、“规则 (rules)” 三个资料来处理封包的运送。
扩展工程( 3 ) :
jdiff : (主机 JAVA 库)比较工具
jhead : Jpeg 文件头( Exif )编辑修改软件
jpeg : Jpeg 工具库
libffi : a portable foreign function interface library
libpcap : 网络数据包捕获函数包
libpng : PNG 工具库
libxml2 : (主机 / 目标机) C 语言的 XML 解析库
netcat : 用来对网路连线 TCP 或者 UDP 进行读写
netperf : 网络性能的测量工具
neven : 人脸识别的一套库
opencore : 多媒体框架
openssl : C 语言的 SSL ( Secure Sockets Layer )工具
oprofile : Linux 内核支持的一种性能分析机制
ping : ping 工具
ppp : ppp 工具
protobuf : Google 工具,利用 .proto 文件自动生成代码
扩展工程( 4 ) :
qemu : (主机)仿真环境
safe-iop : 夸平台的整数运算
skia : 一个图形库
sonivox : Sonic 嵌入式的音乐合成器
sqlite : 轻量级的 SQL 嵌入式数据库
srec : (主机 / 目标机) motorola S-records 16 进制文件格式工具
strace : 监视系统调用的工具
tagsoup : ( JAVA ) HTML 解析工具
tcpdump : 网络中传送的数据包的头完全截获下来提供分析的工具
tinyxml : (主机 / 目标机) XML 工具
tremor : Ogg Vorbis 的播放器
webkit : 开源的浏览器引擎
wpa_supplicant : 无线局域网 Wifi 的工具
xdelta3 : (主机 / 目标机)二进制文件比较工具
yaffs2 : (主机) YAFFS 文件系统
包(包括应用程序,提供者和输入法):
Applications ( package/apps )
AlarmClock , Browser , Calculator , Calendar , Camera
Contacts , Email , GoogleSearch , HTML Viewer , IM
Launcher , Mms , Music , PackageInstaller , Phone
Settings , SoundRecorder , Stk , Sync , Updater ,VoiceDialer
Providers ( package/Providers )
CalendarProvider , ContactsProvider , DownloadProvider
DrmProvider , GoogleContactsProvider ,
GoogleSubscribedFeedsProvider ,
ImProvider , MediaProvider , SettingsProvider ,
SubscribedFeedsProvider , TelephonyProvider
本文来源于<a href='http://newfaction.net'>Venus</a> , 原文地址http://newfaction.net/2010/12/09/android-source-code-structure.html