1. Android Studio 项目创建与工程结构解析
创建 Empty Activity 项目
在 Android Studio 欢迎界面选择 New Project,模板列表中选择 Empty Activity(注意不是 Empty Views Activity 之外的其它模板)。在配置页填写以下关键字段:
- Name:HelloAndroid(应用显示名)
- Package name:com.example.helloandroid(唯一标识,反向域名)
- Save location:本地空目录,路径不要含中文与空格
- Language:Kotlin
- Minimum SDK:API 24(Android 7.0,覆盖率高且语法支持好)
- Build configuration language:Kotlin DSL(build.gradle.kts)
点击 Finish 后,Android Studio 会执行一次 Gradle Sync,从本地或远程仓库解析 AGP、Kotlin 插件与 AndroidX 依赖。首次同步需要联网下载依赖,耗时取决于网络;同步成功后工具栏的 Run 按钮才会变为可用状态。
工程目录职责划分
项目创建完成后,左侧 Project 面板切换到 Android 视图,会看到按逻辑分组的目录。理解每个目录的职责,是后续所有案例的基础:
| 目录 / 文件 | 职责 | 本案例关注点 |
|---|---|---|
| app/src/main/java/… | Kotlin/Java 源码,按包名分层 | MainActivity.kt 是唯一入口 Activity |
| app/src/main/res/layout | XML 布局文件 | activity_main.xml 定义界面结构 |
| app/src/main/res/values | 字符串、颜色、主题等常量 | strings.xml 中的 app_name 决定桌面名称 |
| app/src/main/res/mipmap-* | 不同密度的启动图标 | ic_launcher 系列 |
| app/src/main/AndroidManifest.xml | 应用清单:组件声明、权限、入口 | 声明 MainActivity 并标记 LAUNCHER |
| app/build.gradle.kts | 模块级构建脚本:SDK 版本、依赖 | compileSdk / minSdk / dependencies |
| build.gradle.kts(根) | 工程级脚本:插件版本统一管理 | AGP 与 Kotlin 插件声明 |
| settings.gradle.kts | 声明参与构建的模块与仓库 | include(":app") |
| gradle/libs.versions.toml | 版本目录,集中管理依赖版本 | AndroidX 依赖版本来源 |
Android 视图是逻辑映射,不是磁盘真实结构。切到 Project 视图可看到真实的 app/src/main 层级,两者对照理解更清晰。
构建链路与运行验证
点击 Run 后,Android Studio 依次执行:Gradle 编译资源与 Kotlin 源码 → 打包 APK → 通过 ADB 安装到模拟器 → 启动 MainActivity。若模拟器未创建,需先在 Device Manager 中新建一个 API 34 的 Pixel 设备。运行成功的判断依据是:模拟器桌面出现 HelloAndroid 图标,点击后显示 "Hello Android!" 文本,且 Logcat 无 FATAL EXCEPTION。
关键文件内容核对
创建完成后,打开以下三个文件确认内容与预期一致,这是判断工程是否正确的直接依据:
// app/src/main/java/com/example/helloandroid/MainActivity.kt
package com.example.helloandroid
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.material3.Text
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Text("Hello Android!")
}
}
}
<!-- app/src/main/AndroidManifest.xml -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
// app/build.gradle.kts(关键片段)
android {
namespace = "com.example.helloandroid"
compileSdk = 34
defaultConfig {
applicationId = "com.example.helloandroid"
minSdk = 24
targetSdk = 34
versionCode = 1
versionName = "1.0"
}
}
若 Run 按钮灰色不可点,通常是 Gradle Sync 未完成或失败。查看 Build 面板的报错信息,常见原因是网络无法访问 Maven 仓库,或 JDK 版本与 AGP 不匹配(AGP 8.x 需要 JDK 17)。
验证清单
- Gradle Sync 成功,Build 面板显示 BUILD SUCCESSFUL
- 模拟器已启动且 adb devices 能识别到设备
- 应用安装后桌面出现 HelloAndroid 图标
- 点击图标进入界面,显示 "Hello Android!"
- Logcat 过滤 FATAL EXCEPTION 无输出