在AS中,提供了许多中项目结构类型。下面主要是介绍Project、Android和Packages
1、项目结构的选择
点击左上角的小图标可选择对应的项目结构
2、Project项目结构
- MyApplication
- .gradle: Gradle编译系统,版本由wrapper指定(无须手动修改)
- .idea: IDE所需要的文件(无须手动修改)
- app: 开发项目的所有代码和资源文件
- build: app模块编译输出的文件
- libs: 放置引用的类库文件
- src: 放置应用的主要文件目录
- AndroidTest: 单元测试目录
- main: 主要的项目目录和代码
- java: 项目的源代码
- res: 项目的资源
- drawable: 存放各种位图文件(.png,.jpg,.9png,.gif等)和drawable类型的XML文件
- drawable-v24: 存放自定义Drawables类(Android API 24开始,可在XML中使用)
- layout: 存放布局文件
- menu: 存放菜单文件
- mipmap-hdpi: 存放高分辨率图片资源
- mipmap-mdpi: 存放中等分辨率图片资源
- mipmap-xdpi: 存放超高分辨率图片资源
- mipmap-xxdpi: 存放超超高分辨率图片资源
- mipmap-xxxdpi: 存放超超超高分辨率图片资源
- raw: 存放各种原生资源(音频,视频,一些XML文件等)
- values: 存放各种配置资源(颜色,尺寸,样式,字符串等)
- xml
- AndroidManifest.xml: 项目的清单文件(名称、版本、SDK、权限等配置信息)
- test
- .gitignore: 忽略的文件或者目录
- app.iml: app模块的配置文件
- build.gradle: app模块的gradle编译文件
- proguard-rules.pro: app模块的代码混淆配置文件
- gradle: wrapper的jar和配置文件所在的位置
- .gitattributes: 用于设置文件的对比方式
- .gitignore: 忽略的文件或者目录
- build.gradle: 项目的gradle编译文件
- gradle.properties: gradle相关的全局属性设置
- gradlew: 编译脚本,可以在命令行执行打包
- gradlew.bat: windows下的gradle wrapper可执行文件
- MyApplication.iml: 保存该模块的相关信息
- README.md: 文本编辑器,记录一些相关信息
- local.properties: 配置SDK/NDK所在的路径
- setting.gradle: 设置相关的gradle脚本
- External Libraries: 项目依赖的库,编译时自动下载
3、Android项目结构
- app
- manifests
- AndroidManifest.xml: 项目的清单文件(名称、版本、SDK、权限等配置信息)
- java: 项目的源代码
- src: 放置应用的主要文件目录(子目录可参考Project的介绍)
- Gradle Scripts: gradle编译相关的脚本(具体文件的说明可参考Project的介绍)
4、Package项目结构
具体文件的说明可参考Project的介绍
参考文章说明(https://www.jianshu.com/p/4962b4eeec63)