Gradle Recipes for Android 项目教程
GradleRecipesForAndroidSource code for the book “Gradle Recipes for Android”项目地址:https://gitcode.com/gh_mirrors/gr/GradleRecipesForAndroid
1. 项目的目录结构及介绍
Gradle Recipes for Android 项目的目录结构如下:
GradleRecipesForAndroid/
├── app
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── res
│ └── test
│ └── java
├── build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
目录结构介绍
app: 包含应用程序的主要代码和资源。
build.gradle: 应用程序模块的构建脚本。proguard-rules.pro: ProGuard 规则文件。src: 源代码和资源文件。
main: 主源集,包含应用程序的主要代码和资源。
AndroidManifest.xml: 应用程序的清单文件。java: Java 源代码目录。res: 资源文件目录。 test: 测试源集,包含单元测试代码。 build.gradle: 根项目的构建脚本。gradle: Gradle 包装器目录。
wrapper: Gradle 包装器文件。
gradle-wrapper.jar: Gradle 包装器 JAR 文件。gradle-wrapper.properties: Gradle 包装器属性文件。 gradle.properties: Gradle 属性文件。gradlew: Gradle 包装器脚本(Unix)。gradlew.bat: Gradle 包装器脚本(Windows)。settings.gradle: 项目设置文件。
2. 项目的启动文件介绍
项目的启动文件是 app/src/main/java
目录下的主应用程序类文件。通常,这个文件是应用程序的入口点。
例如,如果主应用程序类是 MainActivity.java
,则启动文件为:
package com.example.app;
import android.app.Activity;
import android.os.Bundle;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
3. 项目的配置文件介绍
build.gradle
(根项目)
根项目的 build.gradle
文件通常包含以下内容:
// 构建脚本块
buildscript {
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.0'
}
}
// 所有项目块
allprojects {
repositories {
google()
mavenCentral()
}
}
// 任务块
task clean(type: Delete) {
delete rootProject.buildDir
}
build.gradle
(应用程序模块)
应用程序模块的 build.gradle
文件通常包含以下内容:
apply plugin: 'com.android.application'
android {
compileSdkVersion 30
defaultConfig {
applicationId "com.example.app"
minSdkVersion 21
targetSdkVersion 30
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.3.1'
implementation 'com.google.android.material:material:1.4.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.0'
}
settings.gradle
settings.gradle
文件包含项目模块的配置:
include ':app'
gradle.properties
gradle.properties
文件包含 Gradle 构建系统的属性
GradleRecipesForAndroidSource code for the book “Gradle Recipes for Android”项目地址:https://gitcode.com/gh_mirrors/gr/GradleRecipesForAndroid