我们创建了一个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. MSSQL导入导出数据

    /******* 导出到excel */ EXEC master..xp_cmdshell 'bcp SettleDB.dbo.shanghu out c:\temp1.xls -c -q -S&qu ...

  2. Struts2:标签库

    使用struts标签库的jsp需要引入标签库<%@taglib prefix="s" uri="/struts-tags"%>url来自哪里? st ...

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

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

  4. Python从题目中学习:List comprehension

    九九乘法表作业其实有更简单的做法,就是用列表推导式. ------------------------------------------------------------------------- ...

  5. Flume 远程写HDFS

    现在的需求是在一台Flume采集机器上,往Hadoop集群上写HDFS,该机器没有安装Hadoop. 这里的Flume版本是1.6.0,Hadoop版本是2.7.1. 把Hadoop集群的hdfs-s ...

  6. Python 前端之JS

    JavaScript由浏览器编译运行 JS的导入方式有两种,一种直接定义,第二种通过src引入:可以存放在<head>头部,但是强烈建议放在<body>的最下面,因为如果你引入 ...

  7. XidianOJ 1096 数的拆分

    题目描述 输入自然数n,然后将其拆分成由若干数相加的形式,参与加法运算的数可以重复. 输入 多组数据.每组只有一个整数n,表示待拆分的自然数n. n<=80 输出 每组一个数,即所有方案数. - ...

  8. 自定义控件TextView

    public class defineTextView extends TextView { Context context; public defineTextView(Context contex ...

  9. 4.0以后的新布局方式GridLayout

    <?xml version="1.0" encoding="utf-8"?> <GridLayout xmlns:android=" ...

  10. ecshop的特点,持续加新

    一.目录文件结构 入口文件index.php,define('IN_ECS', true); 只有为true时才可以进入. 首先加入init.php,在这个文件里: @ini_set('memory_ ...