`
yidongkaifa
  • 浏览: 4071257 次
文章分类
社区版块
存档分类
最新评论

CyanogenMod移植教程的安卓源码总体结构解说

 
阅读更多

解说CyanogenMod移植教程的安卓源码总体结构

 – Makefile (全局的Makefile文件)

  – bionic (Bionic含义为仿生,这里面是一些基础的C库源代码)

  – bootloader (引导加载器)

  build目录中的内容不是目标所用的代码,而是编译和配置所需要的脚本和工具)

  – build (build目录中的内容不是目标所用的代码,而是编译和配置所需要的脚本和工具)

  – cts (Android兼容性测试套件标准)

  – libcore (核心库相关)

  Dalvik虚拟机 针对嵌入式设备优化的Java

  Java虚拟机)

  – dalvik ( Dalvik虚拟机,针对嵌入式设备优化的Java虚拟机)

  – development (创建应用程序所需要的模板和工具)

  qcom,

  – device (与具体设备相关的一些编译脚本和库,如htc,qcom,samsung等)

  – external (Android使用的一些外部的开源框架和库)

  (应用程序的框架层,SDK

  SDK的接口基本都是在这里实现的)

  – frameworks (应用程序的框架层,SDK的接口基本都是在这里实现的)

  – hardware (与硬件相关的库)

  Linux2.6

  – kernel (Linux2.6的内核源代码)

  – ndk (本地开发套件--C语言开发套件)

  --C

  Android的各种应用程序)

  – packages (Android的各种应用程序)

  – prebuilt (Android在各种平台下编译的预置脚本)

  – sdk (SDK及模拟器)

  Android的底层的一些库)

  – system (Android的底层的一些库)

  `– vendor (厂商私有的代码)

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  packages/

  |– apps (各种应用程序,如联系人、浏览器等)

  |– experimental (一些实验性的项目,如错误报告)

  |– inputmethods (输入法相关)

  |– providers (各种数据源实现,如联系人数据、媒体库等信息)

  |– wallpapers (各种壁纸程序)

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Android Framework功能介绍

  android.app :提供高层的程序模型和基本的运行环境。

  android.content :包含对各种设备上的数据进行访问和发布。

  android.database :通过内容提供者浏览和操作数据库。

  android.graphics :底层图形库,包含画布、点、矩形等,可以将其直接绘制到屏幕上。

  android.location :定位和相关服务的类。

  android.media :提供一些类管理多种音频、视频的媒体接口。

  android.net :提供帮助网络访问的类,超过通常的 java.net.* 接口。

  android.os :提供了系统服务、消息传输和 IPC 机制。

  android.opengl :提供 OpenGL 的工具。

  android.provider :提供访问 Android 内容提供者的类。

  android.telephony :提供与拨打电话相关的 API 交互。

  android.view :提供基础的用户界面接口框架。

  android.util :涉及工具性的方法,例如时间日期的操作。

  android.webkit :默认浏览器操作接口。

  android.widget :包含各种 UI 元素(大部分是可见的)在应用程序的布局中使用

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  build/

  |– buildspec.mk.default

  |– cleanspec.mk

  |– core (各种以mk为结尾的文件,它门是编译所需要的Makefile)

  |– envsetup.sh

  |– libs

  |– target (包含board和product两个目录,为目标所需要文件)

  |– tools (编译过程中主机所需要的工具,一些需要经过编译生成)

  其中,core中的Makefile是整个Android编译所需要的真正的Makefile,它被顶层目录的Makefile引用。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics