作者: Sam (甄峰) sam_code@hotmail.com
Android Studio的App工程结构, 目录结构与 Eclipse+ADT的有一些不同。现学习如下。
1. Project和Module:
Android Studio的在创建项目时,有两个层级。一个是Project, 相当于workspace.
另一个是module, 可以对应App.
一个Project中可以有多个Module. 相当于在一个workspace内,创建多个项目。
1.1: 创建Project:
File -> New -> New Project.
则创建Project,这个Project内,同时还包含一个Module。
1.2: 创建Module:
File -> New -> New
Module。它则会在当前Project内创建一个新的Module.
同一个Project内可以有多个Module。
2.
Android工程结构:
先创建一个Project,再在这个Project内多创建一个Module。此时,
Project内有两个Module。
在结构图中可以看到, 该Project有三个目录, 一个是app, 一个是新建的module--Test_Game,
第三个是 Gradle Scripts.
每个Module目录下, 又有三个目录:
A:manifests: 包含一个xml文件----AndroidManifest.xml,
是APP运行的配置文件。
B: java: 下面有三个包名,第一个是存放Module的 Java源码。
其它两个则是用来存放测试用代码。
C: res: 此Module的资源文件。
Gradle
Scripts目录:
主要用来存放工程的编译配置文件。主要包括:
build.gradle: 此文件包括两类, 针对Project的,
针对Module的。每个Project都会对应一个build.gradle,
每个module也对应一个。用来描述App的编译规则。
proguard-rules.pro:
gradle.properties: 配置编译工程的命令行参数。
settings.gradle: 配置那些内容一起编译。 include ':app' , ':game_test1' .
想编译哪些Module, 就可以加入其中。
local.properties: 项目本地配置。
比如SDK路径,NDK路径。
3.
编译配置文件--build.gradle:
前面说过: build.gradle分两类, 针对Project和针对Module的。
我们通常只关心针对Module的编译配置文件。
具体看内容:
android条目下, 分别包括编译 SDK版本号。
buildTools版本号。
buildTypes条目下: 指定是否开启混淆功能。
dependencies:
4.
AndroidManifest.xml:
与Eclipse+ADT类似。