Android项目结构

Android项目结构

新建个空的安卓项目,打开,切换到project模式:

一、工程结构

Android项目结构_第1张图片

1/ .gradle和.idea

这两个目录下都是AS自动生成的,无须关心,也不要手动编辑。

2/ app

项目中的代码、资源等几乎都在这里,后面开发也基本在这里,等下细谈这里。

3/ gradle

这个目录下包含gradle wrapper的配置文件,使用gradle wrapper的方式不需要提前将gradle下载好,而是会自动根据本地的缓存情况决定是否需要联网下载gradle。
AS默认没有启用gradle wrapper的方式,修改设置:

AS导航栏-File-Settings-Build,Execution,Deployment-gradle。

Android项目结构_第2张图片

4/ .gitgnore

用来将指定的目录或文件排除在版本控制外。

5/ build.gradle

项目全局的gradle构建脚本,通常内容不需修改。
细节内容可参考:AndroidStudio的Gradle基础

6/ gradle.properties

全局的gradle配置文件,这里配置的属性将会影响到项目中所有的gradle编译脚本。

7/ gradlew和gradlew.bat

用于在命令行界面中执行gradle命令,其中gradlew是在linux或mac系统,gradlew.bat是在windows系统使用。

8/ local.properties

用于指定本机中AndroidSDK路径,通常内容是自动生成,除非本机SDK位置发生变化,否则无须修改。

9/ settings.gradle

用于指定项目中所有引入的模块,新工程demo只有一个app模块,所以该文件中就只引入了app这一个模块。通常模块的引入都是自动完成的。

include ':app'

二、app目录结构

Android项目结构_第3张图片

1/ build

包含了一些在编译时自动生成的文件,无需过多关心。

2/ libs

若项目中使用到了第三方jar包,就需要把这些jar包都放在libs目录下,放在这个目录下的jar包都会被自动添加到构建路径去。

3/ androidTest

这个是用来编写androidTest测试用例的,可以对项目进行一些自动化测试。

4/ java

放置我们所有的java代码的地方。

5 / res

在項目里用到的所有**图片(drawable)、布局(layout)、字符串(values)**等资源都要存放在这。下面着重说下。

6 / AndroidManifest.xml

整个安卓项目的配置文件,在程序中定义的所有四大组件(Activity、Service、Broadcast Receiver、Content Provider)都需要在这个文件里注册,另外还可以在这里给应用程序添加权限声明。

7/ test

此处是来编写Unit test测试用例的,是对项目进行自动化测试的另一种方式。

8/ .gitgnore

同外部的类似,排除版本控制。

9/ app.iml

IntelliJ IDEA项目自动生成的文件,不需关心,无须修改。

10/ build.gradle

app模块的gradle构建脚本,文件中会指定很多项目构建相关的配置。
细节内容可参考:AndroidStudio的Gradle基础

11/ proguard-rules.pro

用于指定项目代码的混淆规则,当代码开发完成后打成安装包文件,如果不希望代码被人破解,通常会将代码混淆,从而让破解者难以阅读。

三、res目录结构

Android项目结构_第4张图片

1/ drawable开头 放图片

2/ mipmap开头 放应用图标

3/ layout开头 放布局xml文件

4/ values 放字符串、样式、颜色等配置

前缀后面接的“-”后面内容是为了更好地兼容各种设备。(不同分辨率)

e.g. res/values/string.xml的内容:


	HelloWorld

这里定义了一个应用程序名的字符串,有两种方式引用它:

  • 代码中通过R.string.app_name可以获得该字符串的引用
  • 在XML中通过@string/app_name可以获得该字符串的引用

esource>

这里定义了一个应用程序名的字符串,有两种方式引用它:

  • 代码中通过R.string.app_name可以获得该字符串的引用
  • 在XML中通过@string/app_name可以获得该字符串的引用

你可能感兴趣的:(Android基础)