1 Android Studio 初始化项目的项目结构
开发 Android 最好就是使用 Android Studio IDE,Android Studio 初始化项目的目录结构如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210205132225942.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80OTAxNTE1Nw==,size_16,color_FFFFFF,t_70#pic_center)
gradle 和 .idea:这两个目录复制都是 AS 自动生成的一些文件
app:项目中的代码、资源等内容几乎都是放置在该目录下
build:主要是一些编译时自动生成的文件
gradle:这个目录下包含 gradle wrapper 的配置文件 gradle-wrapper.properties,它包含 gradle 的版本号,使用 gradle wrapper 的方式导入项目不需要提前将 gradle 下载好,而是会自动根据本地缓存情况决定是否下载 gradle,是否使用 gradle wrapper 方式可以在 AS 导航栏中的 Settings 设置。
build.gradle:这是项目全局的 gradle 构建脚本,通常不用修改。使用多模块的时候,可以在这里定义引用库的版本号,给内部的 gradle 构建脚本使用
gradle.properties:这是 gradle 的全局配置文件
MyAndroidApp.iml:iml 文件是所有 IDEA 项目都会自动生成的一个文件,而 AS 是基于 IDEA 开发的。
local.properties:这个文件用于指定本机中的 Android SDK 路径,是软件自动生成
settings.gradle:该文件用于指定项目中所有引入的模块
1.1app 目录的结构
build:与外层的 build 目录类似,主要是一些编译时自动生成的文件,无需关心
libs:项目中使用的第三方 jar 包,就需要把这些 jar 包放置在 libs 目录下,放置在这个目录下的 jar 包都会自动添加到构建路径中
androidTest:自动化测试
java:放置 java 代码的地方
res:项目中使用到的所有图片、布局、字符串等资源都要放置在该目录下,比如:
drawable:放置图片文件
mipmap:放置应用图标
layout:放置布局文件
values:放置字符串、样式、颜色等配置
AndroidMainfest.xml:该文件是整个项目的配置文件,在程序中定义的所有四大组件都需要在这个文件中进行注册,还可以给应用程序添加权限声明
test:自动化测试
.gitignore:值得注意的是 app 模块的外层也有 .gitignore 文件
app.iml:IDEA 项目自动生成的文件
build.gradle:app 模块即当前模块的 gradle 构建脚本
proguard-rules.pro:用于指定项目代码的混淆规则,当代码开发完成后打包成安装包文件,如果不希望代码被人破解,就需要将代码进行混淆,让破解者难以阅读
1.1.1 详解 build.gradle 文件
AS 是采用 gradle 来构建项目的,gradle 是一个项目构建工具,它使用一种基于 Groovy 的领域特定语言来声明项目设置。
在前面已经说过,一个刚刚初始化的项目中有两个 build.gradle 文件,一个是在外层,一个是在 app 目录下的。
刚初始化的最外层 build.gradle 文件,代码如下:
buildscript {
repositories {
google()
jcenter()
}
dependencies {
c