基础介绍
Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。
经典结构
广义上将Android分为四层架构,分别是:Linux内核层、系统运行库层、应用框架层和应用层
其中在Linux层又可以划分为Linux内核和硬件抽象层。在Libraries层还可以分出Android Runtime(运行时)。
下面的关于结构的详细介绍:
名称 | 描述 |
---|---|
Application | 应用层,指运行于Android虚拟机上的程序,也就是平时开发的手机应用。 |
Framework | 框架层,指Android应用开发的核心,为开发者提供基础的Api。 |
Libraries | 类库层,指通过系统类库层来使用比较底层的c或c++的库来支持我们使用组件或模块。 |
Linux | 内核层,主要实现内存管理、进程调度、进程通信功能。 |
关于Dalvik和Art虚拟机的区别如下:
Dalvik:每个APP分配Dalvik虚拟机来保证独立性,它包含了整套Android运行虚拟机。(5.0之前,运行时编译)
ART:用于取代Dalvik虚拟机,安装时编译,但运行速度快。(5.0之后,安装时编译)
环境变量
JDK配置
JDK的环境配置如下所示:
系统变量 → 新建JAVA_HOME变量,变量值填写jdk的安装目录。
系统变量 → 寻找Path变量→编辑,输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
系统变量 → 新建 CLASSPATH 变量,输入 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
检验是否配置成功,运行cmd 输入 java -version。
如果需要用到Tomcat服务器的话,需要做如下配置:
系统变量 → 新建CATALINA_BASE变量,输入:D:\tomcat
系统变量 → 新建CATALINA_HOME变量,输入:D:\tomcat
SDK配置
SDK的环境配置如下所示:
系统变量→寻找Path → 编辑,输入SDK中platform-tools和tools的目录路径。
检验是否配置成功,运行cmd 输入adb即可。
Gradle配置
Gradle的环境变量配置如下所示:
系统变量 -> 寻找Path -> 编辑,输入D:\Android Studio\gradle\gradle-3.2\bin
打开CMD窗口,输入gradle -v即可
源码和系统结构
源码目录
Android5.0的源码目录如下所示:
注意:并非所有的源码目录结构都是这样,只有AOSP(开发源代码)的目录是这样,某些芯片厂商(例:MTK)目录结构会有不同。
系统目录
Android系统目录和源码目录结构有很大的差别,系统的目录结构如下图:
注:很多目录基本上在开发中用不上,最常用的是/system和/data两个目录。
项目结构
Android开发工具分为两种:Eclipse、Android Studio。
Eclipse目录结构
eclipse的Android工程项目结构如下图所示:
注:由于Android已经拥有自己的开发工具Android Studio,所以eclipse已经不推荐使用,这里不再详细介绍。
Studio目录结构
Android Studio的工程项目结构如下:
以上就是Android Studio的项目结构。