Android目录结构

eclipse中
1)src
编写Java代码的目录,遵循Java的命名规范、分包。
2)gen
R文件应用资源文件 包含了Android的资源文件的标识符,不需要程序员维护,自动添加,而且有分类的。
注意:不能删除;资源文件不能大写开始
3)asset
原生资源文件,保存应用的资源文件,随程序打包的文件,在你的程序运行时可以动态读取到这些文件的内容
例如音频文件、视频文件或不被用户经常修改的文件。如果你的程序中使用到了WebView 加载本地网页的功能,所有网页相
关的文件也都存放在这个目录下
4)bin
包含编译生成apk的应用程序xx.apk
5)libs
包含第三方类库的jar包,高低本兼容包、协议包等等。
6)res资源包

包含Android应用的照片资源文件
drawable-hdpi 高清
drawable-ldpi 低清
drawable-mdpi 中清
drawable-xhdpi 超高清
drawable-xxhdpi 超超高清
layout布局文件
完成ui控件的堆放
menu菜单
Android的应用菜单
values字符资源文件
通常使用在手机的国际化:


android studio

首先看下一个App的最简单的目录结构
Android目录结构

【= = 好复杂的样子】

OK,我们这么看,第一,把这么多文件先分成这么三块
1. 编译系统(Gradle)
2. 配置文件
3. 应用模块

Gradle是Google推荐使用的一套基于Groovy的编译系统脚本(当然,你也可以使用ant),具体的介绍和文档可以参考这个传送门:https://developer.android.com/tools/building/plugin-for-gradle.html
如果你学会之后,会对Android项目的编译了如指掌(总之非常爽~),它的缺点目前是效率不高,然后因为有功夫网的存在,所以在bintray上下载依赖会比较慢。

上面那个图中出现gradle字眼的就是gradle相关的一些文件。
Android中使用Gradle Wrapper对Gradle进行了一层包装,我猜测这么做的原因是因为gradle更新速度实在太快,为了兼容性着想,才出了这么一套方案。(如果觉得这个猜想有问题请指正)
gradlew相关的文件就是和Gradle Wrapper有关。我们对除了app文件夹以外的文件列一下。
文件(夹)名 用途
.gradle Gradle编译系统,版本由wrapper指定
.idea Android Studio IDE所需要的文件
build 代码编译后生成的文件存放的位置
gradle wrapper的jar和配置文件所在的位置
.gitignore git使用的ignore文件
build.gradle gradle编译的相关配置文件(相当于Makefile)
gradle.properties gradle相关的全局属性设置
gradlew *nix下的gradle wrapper可执行文件
graldew.bat windows下的gradle wrapper可执行文件
local.properties 本地属性设置(key设置,android sdk位置等属性),这个文件是不推荐上传到VCS中去的
settings.gradle 和设置相关的gradle脚本

这些就是外部文件相关的一些文件的介绍。我们来看下更重要的app模块里的文件

Android目录结构

这是app模块下的文件目录结构,介绍下他们的用途
文件(夹)名 用途
build 编译后的文件存在的位置(包括最终生成的apk也在这里面)
libs 依赖的库所在的位置(jar和aar)
src 源代码所在的目录
src/main 主要代码所在位置(src/androidTest)就是测试代码所在位置了
src/main/assets android中附带的一些文件
src/main/java 最最重要的,我们的java代码所在的位置
src/main/jniLibs jni的一些动态库所在的默认位置(.so文件)
src/main/res android资源文件所在位置
src/main/AndroidManifest.xml AndroidManifest不用介绍了吧~
build.gradle 和这个项目有关的gradle配置,相当于这个项目的Makefile,一些项目的依赖就写在这里面
proguard.pro 代码混淆配置文件

以上就是对Android Studio目录结构的简单介绍~

欢迎关注我Github : @ 我的github