Android开发学习------项目结构分析

Posted 幻桬

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发学习------项目结构分析相关的知识,希望对你有一定的参考价值。

做一个项目,首先要能够看懂项目的结构,大致了解每一块内容是做什么的,从而更好地进行开发。此文章为个人学习android开发时对所创的简单模板项目结构分析的记录,如有错误,欢迎指正!

-----------------------------------------------华丽的分割线-------------------------------------------------

个人项目结构截图

项目结构解析

  • .gradle和.idea

这两个目录下的文件都是编译器自动生成的,无需手动编辑或太过关心。

  • app

用于存放项目中的主要代码和资源,开发过程中主要也是基于此目录。其中:

  • build

此目录和外层的build目录相似,主要包含一些在编译时自动生成的文件,无需太过关心。

  • libs

用于存放项目使用到的第三方jar包,放在此目录下的jar包会自动被添加到构建路径中。

  • src

app目录的主要文件夹,有相对比较复杂的结构:

其中:

1.androidTest:

    用于编写测试用例,可以对项目进行一些自动化测试

2.main包下的java包:

    放置所有java代码,包括但不限于各个页面的具体功能设计和实现等相关的文件

3.main下的res包:

    res,即resource的缩写,存放项目所用到的图片、布局、字符串等资源,有许多的子文件。其中drawable目录用于存放一些图片,layout目录用于存放一些布局,values目录用于存放一些字符串......

4.main包下的AndroidManifest.xml文件:

包含了app的配置信息,相关的解读可见本人的一篇文章戳我戳我快戳我!

  • .gitignore

用于将app模块内指定的目录或文件排除在版本控制之外,与外层的.gitignore文件作用相似。在使用git进行版本控制时会用到。

  • build.gradle

gradle构建脚本,包含很多与项目构建相关的配置。

  • proguard-rules.pro

用于指定代码的混淆规则。当代码开发完后打包成安装包文件,如果不希望自己的代码被破解,则可以考虑将代码进行混淆,使其难以破解。

  • gradle

包含gradle wrapper的配置文件,使用gradle wrapper会根据本地的缓存情况决定是否需要联网下载gradle,默认不启动。

  • .gitignore

用于将指定的目录或者文件排除在版本控制之外,在使用git进行版本控制时要用到。

  • build.gradle

项目全局的gradle构建脚本,通常不需要修改。

  • gradle.properties

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

  • gradlew

用于在Linux和Mac系统使用命令行执行gradle命令。

  • gradlew.bat

用于在Windows系统使用命令行执行gradle命令。

  • local.properties

用于指定本机的Android SDK路径,通常是自动生成的,在自己修改SDK路径时,需要改动这里的内容如:

sdk.dir=C\\:\\\\Users\\\\Moyon\\\\AppData\\\\Local\\\\Android\\\\Sdk

  • settings.gradle

用于指定项目中所有引入的模块,通常自动完成,一般不用手动修改。

-----------------------------------------------华丽的分割线-------------------------------------------------

可以发现,很多文件都是我们在创建项目时,编译器自动生成的,甚至一般不需要我们去手动修改,真正要改动的文件屈指可数......

以上是关于Android开发学习------项目结构分析的主要内容,如果未能解决你的问题,请参考以下文章

《第一行代码 第二版》Android开发学习笔记 java

Android应用开发项目结构分析

-Android学习笔记之:初识Android系统架构和项目结构

Android开发学习——Android项目的目录结构

RN之项目结构分析

入门篇Android学习笔记——项目结构及相关基础知识