Android开发自学笔记(二):工程文件剖析
本篇文章主要介绍 Android 工程的文件结构和主要文件作用,加深对 Android 工程的理解。
工程文件结构
Android 工程一般都有以下文件/文件夹:
.
├── libs
├── src
│ ├── androidTest
│ ├── main
│ └── test
├── build.gradle
├── gradle
├── gradle.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
主要文件/文件夹介绍如下:
libs
文件夹:存放本地依赖库src
文件夹:存放主要代码文件和测试文件,包含了三个子文件夹main
文件夹:放置应用的主要代码文件test
文件夹:存放单元测试的代码androidTest
文件夹:存放 UI 测试的代码build.gradle
:整个项目的构建脚本gradle
文件夹:Gradle 相关的文件gradle.properties
:Gradle 配置文件,用于指定项目的一些属性值gradlew
、gradlew.bat
:Gradle Wrapper 脚本settings.gradle
:Gradle 项目配置
主要文件详细说明
build.gradle
build.gradle 文件是整个项目的构建脚本。它使用 Gradle DSL 语言编写,用于指定应用的版本、编译选项、依赖库的引入等。其中,build.gradle 文件的语法包含了三个部分:buildscript、plugins 和 android。
// build.gradle
buildscript {
// ...
}
plugins {
// ...
}
android {
// ...
}
在 buildscript
中,我们可以指定 Gradle 的配置信息,如指定 Gradle 插件和第三方库等。
在 plugins
中,我们可以指定 Gradle 插件。
在 android
中,我们可以指定 Android 构建选项,如应用包名、版本号、签名信息等,也可以指定应用依赖的其他第三方库。
src
src 文件夹一般是整个项目最重要的文件夹,其中包含了 Android 工程的源代码。src 文件夹包含了三个子目录: main、test、androidTest。其中:
- main:处理底层应用逻辑,包含一个应用的全部代码和资源文件,如 Java、Kotlin、资源文件、配置文件等。
- test:用于编写 Unit Tests,处理应用逻辑的测试代码。
- androidTest:用于编写 UI Tests,处理 Activity、Fragment、Intent、View 等 UI 相关的测试代码。
gradle.properties
gradle.properties 文件存放有各种 Gradle 相关的属性配置。每一个属性都有一个特殊的键值来引用它。在 Android 项目中,可以通过 gradle.properties 文件配置一些全局常量和默认值。
例如:
# install.gradle
android.enableJetifier=true
android.useAndroidX=true
gradle/wrapper
gradle/wrapper/ 文件夹中主要存放了 Gradle 的 Wrapper 脚本,即 gradlew 和 gradlew.bat,用于指定项目使用的 Gradle 版本。当你下载一个新项目命令行执行 compile 或 package 命令时,gradle wrapper 会自动下载指定版本的 Gradle 程序并执行。这样就解决了不同项目使用不同版本 Gradle 的问题。
例如:
// gradle/wrapper/gradle-wrapper.properties
# Gradle设置
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip
示例说明
示例一
假设我们的应用中需要使用 Glide 库实现图片的异步加载。在 build.gradle 文件中添加以下代码来引入 Glide 库:
dependencies {
implementation 'com.github.bumptech.glide:glide:4.9.0'
}
Glide 库就会被添加到我们的应用工程中,可以直接使用。注意,这里的 implementation 是 Gradle 新版本中的写法,如果你的 Gradle 版本过低则需要使用 compile。
示例二
假设我们在应用中需要修改默认的资源文件。我们可以在 src/main/res 目录下找到和 strings.xml 同名的 strings.xml 文件,打开它并修改其中的内容,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">My Application</string>
</resources>
修改其中的 "My Application" 为我们希望修改的内容即可。
结论
本文(Android开发自学笔记(二):工程文件剖析)介绍了 Android 工程的文件结构以及主要文件的作用。通过学习本文,您应该可以更好地理解 Android 工程的构建流程和文件结构,帮助您更好地进行 Android 开发。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Android开发自学笔记(二):工程文件剖析 - Python技术站