Nammu 开源项目使用教程
1. 项目的目录结构及介绍
Nammu 项目的目录结构如下:
Nammu/
├── README.md
├── LICENSE
├── app/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── pl/
│ │ │ │ └── tajchert/
│ │ │ │ └── nammu/
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── ...
│ │ │ └── res/
│ │ │ ├── layout/
│ │ │ │ └── activity_main.xml
│ │ │ └── ...
│ │ └── test/
│ │ └── ...
│ └── build.gradle
├── build.gradle
└── settings.gradle
目录结构介绍
README.md
: 项目说明文件。LICENSE
: 项目许可证文件。app/
: 应用模块目录。src/
: 源代码目录。main/
: 主代码目录。java/
: Java 代码目录。pl/tajchert/nammu/
: 主要功能代码目录。MainActivity.java
: 应用的主活动文件。
res/
: 资源文件目录。layout/
: 布局文件目录。activity_main.xml
: 主活动的布局文件。
test/
: 测试代码目录。
build.gradle
: 应用模块的构建脚本。
build.gradle
: 项目的根构建脚本。settings.gradle
: 项目的设置脚本。
2. 项目的启动文件介绍
项目的启动文件是 MainActivity.java
,位于 app/src/main/java/pl/tajchert/nammu/
目录下。这个文件是应用的主活动,负责初始化应用界面和处理用户交互。
MainActivity.java 文件介绍
package pl.tajchert.nammu;
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);
// 初始化代码
}
}
package pl.tajchert.nammu;
: 包声明。import android.app.Activity;
: 导入 Activity 类。import android.os.Bundle;
: 导入 Bundle 类。public class MainActivity extends Activity { ... }
: 定义 MainActivity 类,继承自 Activity。@Override protected void onCreate(Bundle savedInstanceState) { ... }
: 重写 onCreate 方法,设置布局文件并初始化应用。
3. 项目的配置文件介绍
项目的配置文件主要包括 build.gradle
文件和 settings.gradle
文件。
build.gradle 文件介绍
build.gradle
文件分为根目录下的 build.gradle
和 app
模块下的 build.gradle
。
根目录下的 build.gradle
// 根目录下的 build.gradle
buildscript {
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:4.2.2'
}
}
allprojects {
repositories {
google()
mavenCentral()
}
}
buildscript { ... }
: 配置构建脚本。repositories { ... }
: 配置仓库。dependencies { ... }
: 配置依赖。allprojects { ... }
: 配置所有模块的仓库。
app 模块下的 build.gradle
// app 模块下的 build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 30
defaultConfig {
applicationId "pl.tajchert.nammu"
minSdkVersion 16
targetSdkVersion 30
versionCode 1
versionName "1.0"
}