我们创建了一个Android Project,打开就如下图所示: 

我们选择Project视图,就会有以下的项目文档结构: 

上面笔者标注的数字是接下来要讲解的内容。 
我们先来看1: 
我们创建Application的时候,要求我们输入项目名称,1就是我们创建的项目,AndroidDevelopCourse是项目名称,在实际开发中,我们要为我们项目取一个能明确表达产品的名称,一般使用英文来描述,比如我们的课程是“Android开发课程”。1展开之后是我们完整的项目文档结构。

2: 我们的Android 模块,在AS当中,分为了Project(工作空间),Module(模块)两种概念,我们创建项目的时候会默认创建一个模块,这里的app就是我们的一个module,一个Android应用程序的文档结构。

3:libs,存放项目的类库,例如我们项目中用到的.jar文件。

4:src,Android项目的源文件目录,存放应用程序中所有用到的资源文件。

5:androidTest,存放我们应用程序单元测试代码,我们可以在这里进行单元测试。

6:main,Android项目的主目录,包含java目录存放.java源代码文件,res存放资源文件,包含图像、字符串资源等等,AndroidManifest.xml是项目的配置文件。

7:build.gradle,Android项目的Gradle构建脚本,详细解释看以下注释:

// 表示使用com.android.application插件。
apply plugin: 'com.android.application' // 配置所有android构建过程需要的参数
android {
// 用于编译的SDK版本
compileSdkVersion 21
// 用于Gradle编译项目的工具版本
buildToolsVersion "21.1.2" // 项目默认配置
defaultConfig {
// 应用程序包名
applicationId "com.devilwwj.androiddevelopcourse"
// 最低支持Android版本
minSdkVersion 14
// 目标版本
targetSdkVersion 21
// 版本号
versionCode 1
// 版本名称
versionName "1.0"
}
// 编译类型。默认两个:release和debug
buildTypes {
release {
// 设置是否使用混淆
minifyEnabled false
// 混淆文件
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
} // 用于配置引用的依赖
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.0.0'
}

8:build,Android studio项目的编译目录。

9:gradle,存放项目用到的构建工具。

10:build.gradle,Android Studio项目的构建脚本

// Top-level build file where you can add configuration options common to all sub-projects/modules.

// 用于设置驱动构建过程的代码
buildscript {
// 远程仓库
repositories
// 这里依赖的远程仓库是jcenter
jcenter()
}
// 声明了使用Android Studio gradle插件版本。
dependencies {
classpath 'com.android.tools.build:gradle:1.0.0' // NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
} allprojects {
repositories {
jcenter()
}
}

11:External Libraries,显示项目所依赖的所有类库。 

以上基本上就是完整的Android Studio项目的文档结构,有一些IDE的配置文件这里我们无需关注。

Android Studio项目结构的更多相关文章

  1. Android零基础入门第15节:掌握Android Studio项目结构,扬帆起航

    原文:Android零基础入门第15节:掌握Android Studio项目结构,扬帆起航 经过前面的学习,Android Studio开发环境已准备OK,运行Android应用程序的原生模拟器和Ge ...

  2. Android Studio 项目结构

    在Android Studio中创建项目后,会出现 activity_main.xml 和 MainActivity.java 两个文件 其中  Java文件定义了一个Activity,当应用运行时, ...

  3. 10.5 详解Android Studio项目结构

    Android项目的结构很复杂,并不像HTML项目,最简单的直接一个HTML文件就行了,相信学完上一节的同学就明白,哪怕是一个HelloWorld这样一个项目的文件可能都有几十个,所以我们需要搞清楚, ...

  4. 【Android Studio安装部署系列】三、Android Studio项目目录结构

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 简单介绍下Android studio新建项目的目录结构. 常用项目结构类型 在Android Studio中,提供了以下几种项目结 ...

  5. Android Studio项目转Eclipse项目

    Android Studio项目的目录结构和Eclipse项目不同.如何转换? 以FloatingAction 项目为例:实现向上滑动隐藏悬浮按钮,向上滑动显示悬浮按钮. GitHub 地址:http ...

  6. Android Studio目录结构浅析

    让我们来简单了解下Android Studio中不同目录(文件)的位置和用途.首先看下一个App的最简单的目录结构 OK,我们这么看,第一,把这么多文件先分成这么三块1. 编译系统(Gradle)2. ...

  7. android studio 目录结构讲解

    android studio 目录结构讲解 src 毫无疑问,src目录是放置我们所有 Java代码的地方,它在这里的含义和普通 Java 项目下的 src目录是完全一样的,展开之后你将看到我们刚才创 ...

  8. Android Studio项目Gradle内网配置

    由于内网无法连接到外部网络,在使用Gradle编译Android Studio项目时就会面临一些问题: 1.Gradle安装文件无法下载 2.Gradle Android插件无法下载 3.项目依赖文件 ...

  9. 如何在Android Studio项目中导入开源库?

    前两天,谷歌发布了Android Studio 1.0的正式版,也有更多的人开始迁移到Android Studio进行开发.然而,网上很多的开源库,控件等还是以前的基于Eclipse进行开发,很多人不 ...

随机推荐

  1. strong & weak

    Here is a quick summary: A strong reference will keep the object it points to from being deallocated ...

  2. 剑指Offer:面试题25——二叉树中和为某一值的路径(java实现)

    问题描述: 输入一棵二叉树和一个整数,打印出二叉树中结点指的和为输入整数的所有路径.从树的根结点开始往下一直到叶结点所经过的结点形成一条路径.二叉树结点的定义如下: public class Tree ...

  3. Battery Historian for windows环境搭建

    Battery Historian for windows环境搭建 简介:Battery historian是一款通过上传bugreport文件分析用户手机中App的电池耗电情况的工具. Batter ...

  4. 重装系统分区时,发现一个叫LVM的东西,找出来和大家分享

    LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现,目前 ...

  5. google快捷键,通过浏览器本身来查看

    今天玩google浏览器时发现一个不需要访问google就能查看其快捷键的方式,再此记录一下,以备后用. 1:打开Google浏览器 2:打开开发者工具,有三种方法 2-1:按F12快捷键 2-2:按 ...

  6. #pragma pack(n)

    #pragma pack(n) 重要规则: 1,复杂类型中各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个类型的地址相同: 2,每个成员分别对齐,即每个成员按自己的方式对齐,并最小 ...

  7. Android RadioGroup设置默认选中项

    今天有人问.Android 里面 RadioGroup里面有两个RadioButton怎么设置默认值? 第一个RadioButton设置 android:checked="true" ...

  8. CSS从大图片上截取小图标的操作

    注:图片名称(tabicons.png)每个小图标width:18px;height:18px从左上角坐标为(-0px;-0px;); 例如第一个对号的坐标为(-0px;-0px;)第二个加号的图标为 ...

  9. AngularJs 入门系列-2 表单验证

    对于日常的开发来说,最常见的开发场景就是通过表单编辑数据,这里涉及的问题就是验证问题. angularjs 内置已经支持了常见的验证方式,可以轻松实现表单验证. 1. 绑定 为了方便,我们在 $sco ...

  10. 内省(Introspector)

    内省(Introspector) 是Java 语言对 JavaBean 类属性.事件的一种缺省处理方法 目的:主要用于传递数据信息,这种类中的方法主要用于访问私有的字段(且方法名符合某种命名规则) p ...