【Android源码 栏目提醒】:网学会员为需要Android源码 的朋友们搜集整理了Android项目结构以及体系结构 - 企业软件开发相关资料,希望对各位网友有所帮助!
学习
Android平台的人一般对
Android的平台的应该有点认识 其它的就不多讲了
Android项目一般由以下几个部分构成以上是一个简单的
Android项目结构目录图1. src主要是 源文件目录 放置业务逻辑代码以及相应的UI代码2. gen 下面有个R.java文件夹该文件是建立
Android项目自动生成的 该文件是只读文件 不可以更改 里面有很多静态类名字与res的中资源文件一一对应一般有attr drawable id raw layout string xml 具体看你的项目文件3. assets可以包含系统使用到的文件 比如一些图片 mp3 视频类文件4. res资源文件 主要有以下文件drawable : 我们一般放置一些样式xml也放些图片drawable-hdpi 主要放置一些高清晰的 像素的图片drawable -l 放置一些低像素的图片drawable -m 放置一般像素的图片layout 主要放置一些布局文件menu 是放置一些 xml菜单式文件arrays.xml 一些数组元素colors.xml 一些颜色的值strings.xml一些字符串styles.xml 样式文件dimens.xml 一些像素尺寸的文件values-en-rUS 英文资源文件包values-zh-rCN 中文资源文件包系统会感觉系统设置的语言 应用程序选择相应的资源文件 实现国际化AndroidManifest.xml项目的总配置文件 记录了各种组件 以及应用程序相应的功能可以在里面配置相应的服务权限 等等后期详细介绍defalut.properties主要记录
android的环境信息 比如
Android的版本信息简单讲下
Android体系结构这是
Android官方的图纸1. Applicaiton 是
android核心应用程序包 连同
Android一起发布的 如 发短信 打电话Email 日历 等等 后期给大家一一介绍
android 源码中的应用程序2. framework 应用程序框架开发人员可以访问API框架进行应用程序开发 如丰富而又可扩展的视图Views可以用来构建应用程序它包括列表lists网格grids文本框textboxes按钮buttons甚至可嵌入的web浏览器。
内容提供器ContentProviders使得应用程序可以访问另一个应用程序的数据如联系人数据库或者共享它们自己的数据 资源管理器Resource Manager提供非代码资源的访问如本地字符串图形和布局文件layoutfiles。
通知管理器 Notification Manager 使得应用程序可以在状态栏中显示自定义的提示信息。
活动管理器 Activity Manager 用来管理应用程序生命周期并提供常用的导航回退功能。
3.系统运行库1程序库
Android包含一些C/C库这些库能被
Android系统中不同的组件使用。
它们通过
Android应用程序框架为开发者提供服务。
以下是一些核心库 系统C 库-一个从BSD 继承来的标准 C 系统函数库 libc 它是专门为基于embeddedlinux的设备定制的。
媒体库-基于PacketVideoOpenCORE该库支持多种常用的音频、视频格式回放和录制同时支持静态图像文件。
编码格式包括MPEG4H.264MP3AACAMR JPG PNG 。
Surface Manager -对显示子系统的管理并且为多个应用程序提 供了2D和3D图层的无缝融合。
LibWebCore -一个最新的web浏览器引擎用支持
Android浏览器和一个可嵌入的web视图。
SGL -底层的2D图形引擎 3D libraries -基于OpenGLES1.0APIs实现该库可以使用硬件3D加速如果可用或者使用高度优化的3D软加速。
FreeType -位图bitmap和矢量vector字体显示。
SQLite -一个对于所有应用程序可用功能强劲的轻型关系型数据库引擎。
2
Android 运行库
Android 包括了一个核心库该核心库提供了JAVA编程语言核心库的大多数功能。
每一个
Android应用程序都在它自己的进程中运行都拥有一个独立的Dalvik虚拟机实例。
Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。
Dalvik虚拟机执行.dex的Dalvik可执行文件该格式文件针对小内存使用做了优化。
同时虚拟机是基于寄存器的所有的类都经由JAVA编译器编译然后通过SDK中的dx工具转化成.dex格式由虚拟机执行。
Dalvik虚拟机依赖于linux内核的一些功能比如线程机制和底层内存管理机制。
4.Linux 内核
Android 的核心系统服务依赖于 Linux 2.6内核如安全性内存管理进程管理网络协议栈和驱动模型。
Linux内核也同时作为硬件和软件栈之间的抽象层。
不为别的只求一起进步