本文主要讲解使用Android Studio(AS)创建Android工程的目录结构。重点讲解Android相关的目录,

包括代码存放目录,资源文件存放目录,第三方jar包引用等。同时也会对AS的Gradle进行简单介绍。

目录结构:

  1. AS与Eclipse
  2. 工程根目录
  3. App模块详细
  4. Gradle简介

正文:

一、AS与Eclipse

AS与Eclipse的区别主要就是在工程的结构上,用过Eclipse的都知道,Eclipse创建的工程都是一个
独立项目,每个项目之间可以设置依赖;但AS创建的工程和工程之间是没有关系的,但在工程内部
却可以创建多个模块(module),这些模块之间是可以设置关联的,这种方式和实际项目更加匹配。
所以在AS中,对Module的使用很重要。刚创建好的Android工程只包含一个模块——app。

二、工程根目录

创建完工程会包含一些文件和文件夹,开发者需要关注的包括以下文件和文件夹,其他可不必理会。

如下图:

Android从零开始-Android工程的目录结构_第1张图片

app:主程序模块

gradle:全局Gradle目录,其中gradle-wrapper.properties文件在导入工程是gradle不匹配可能需要

      修改配置

build.gradle:全局Gradle配置信息,可看到Gradle的classpath设置

gradle.properties:一些全局参数设置

local.properties:本地参数设置,如sdk.dir

settings.gradle:包括使用的模块

ps:如果导入工程遇到gradle版本问题,可以修改build.gradle和
gradle-wrapper.properties这两个文件。


三、App模块详细

Android工程以定义模块方式管理工程,App模块是刚创建工程的主工程,在gradle中可以修改主工程,

不过不建议修改。

Android从零开始-Android工程的目录结构_第2张图片

App模块详细:

build:该目录为临时目录,可删除,每次编译时都会自动生成

libs:第三方jar包存放目录,里边的jar包要引用都需要在app模块中的build.gradle中设置

build.gradle:模块的Gradle配置,包括版本号、jar包引用、签名引用等可在这里设置

proguard-rules.pro:混淆文件,签名打包发布时会用到

src/main/assets/:本地资源,不可写目录,一般存放静态文件

src/main/java/:代码目录

src/main/res/:图片、布局等资源

src/main/AndroidManifest.xml:android重要的配置文件,app运行的开始就会去解析该配置文件,后

边会单开章节详细讲解

ps:实际开发过程中,建议参考MVC或MVP等Android常用架构封装代码。


三、Gradle简介

Gradle是以Groovy语言为基础,可动态配置Android版本,编译打包等。在Android工程中,包含
全局的build.gradle配置文件,同时在每个模块中也存在一个build.gradle配置文件。全局build.gradle
通常不用修改,仅在导入工程时修改自己AS使用的Gradle版本会使用到模块build.gradle才是重点需
要修改的文件,里边设置第三方jar的引用,版本号,签名文件等都可能会用到。具体如何设置大家
自行上网补充吧。

四、总结

通过对Android工程目录结构的介绍,让大家对Android有了一个大概的了解,知道自己在开发
过程中代码存放目录和资源的管理和存放。在后边的开发中会更多的使用/java目录和/res目录。


下一章:AndroidManifest文件解析


更多相关文章

  1. 关于android工程中R.java不自动生成的问题
  2. Android Studio项目 目录含义
  3. Android资源目录
  4. Android 目录操作
  5. Android Jetpack AndroidX 依赖目录
  6. android java 检测文件夹(目录)是否存在,不存在则创建
  7. android列出目录下的所有图片
  8. Android在外部修改了工程名文件夹名称,报错
  9. 使用eclipse创建android工程时得到警告

随机推荐

  1. android studio 3.0 preview 使用kotlin
  2. 读书笔记——《Android(安卓)开发艺术探
  3. Android(安卓)RoboGuice 使用指南(14):In
  4. Android(安卓)双屏异显
  5. android手机连接到ubuntu方法
  6. Android中配置改变(Configuration)的处理状
  7. 一个简单的Android小实例
  8. Android(安卓)引入远程依赖导致jar包冲突
  9. VisionMobile:剥光Android
  10. Android之SQLiteOpenHelper