Java 开发 Android 完整教程
这份教程将带你从一名编程新手,逐步成长为能够独立开发 Android 应用的开发者。

第一部分:基础准备与环境搭建
在开始编写代码之前,我们需要准备好开发环境。
学习 Java 基础
Android 应用开发主要使用 Java 语言(或 Kotlin,但本教程专注于 Java),在深入 Android 之前,你需要掌握 Java 的核心概念:
- 基本语法:变量、数据类型、运算符。
- 流程控制:
if-else、switch、for循环、while循环。 - 数组:一维和二维数组的使用。
- 面向对象编程:这是 Java 的核心,必须重点掌握!
- 类 和 对象
- 封装
- 继承
- 多态
- 抽象类 和 接口
- 常用 API:
- 字符串处理:
String和StringBuilder类。 - 集合框架:
List(如ArrayList)、Set(如HashSet)、Map(如HashMap)。
- 字符串处理:
- 异常处理:
try-catch-finally语句。 - 文件 I/O:读写文件的基本操作。
- 多线程:了解
Thread和Runnable的基本概念。
推荐资源:
- 《Java 核心技术 卷 I》
- 在线教程:菜鸟教程、W3Schools、B站上的免费 Java 基础课程。
安装 Android Studio
Android Studio 是 Google 官方推荐的 Android 开发 IDE(集成开发环境),它集成了代码编辑、调试、性能分析、模拟器管理等所有必需的工具。

- 下载:访问 Android Studio 官网 下载适合你操作系统的版本。
- 安装:按照安装向导一步步完成安装,在 Windows 上,建议勾选 "Add PATH to environment variables" 选项。
- 启动与配置:首次启动时,Android Studio 会自动下载一些必要的 SDK 组件,这可能需要一些时间,请保持网络畅通。
配置 Android SDK
SDK (Software Development Kit) 是开发 Android 应用所必需的软件开发工具包,Android Studio 已经为你管理好了大部分 SDK。
- SDK Platform:指定你要开发的 Android 系统版本(如 Android 13, Android 12 等)。
- SDK Tools:包括构建工具、模拟器、平台工具等。
你可以在 Android Studio 的 Tools -> SDK Manager 中查看和管理这些组件,对于初学者,使用默认配置即可。
第二部分:Android 开发核心概念
现在我们来了解 Android 应用的基本构成和工作原理。
第一个 Android 项目:Hello World
- 打开 Android Studio,选择 "New Project"。
- 选择 "Empty Activity" 模板,然后点击 "Next"。
- 配置你的项目:
- Name:你的应用名称(如 "MyFirstApp")。
- Package name:应用的唯一标识符(通常为反向域名格式,如
com.example.myfirstapp)。 - Save location:项目保存路径。
- Language:确保选择 Java。
- Minimum SDK:你的应用支持的最低 Android 系统版本。
- 点击 "Finish",Android Studio 会为你生成一个完整的项目结构。
认识项目结构
在项目浏览器中,你会看到几个关键文件夹:
app/:包含你的应用代码和资源。java/:存放你的 Java 源代码,包名下的MainActivity.java是应用的入口。res/:存放所有资源文件(图片、布局、字符串等)。layout/:存放 XML 布局文件,定义 UI 界面。activity_main.xml对应MainActivity的界面。drawable/:存放图片资源。values/:存放配置文件,如strings.xml(存放字符串常量)、colors.xml(定义颜色)。
AndroidManifest.xml:应用的“清单文件”,声明了应用的包名、组件(Activity, Service等)、权限等关键信息。
build/:存放编译生成的文件。gradle/:Gradle 构建脚本,用于管理项目的依赖和构建流程。
四大核心组件
Android 应用由几个核心组件构成,它们通过 AndroidManifest.xml 文件声明。
-
Activity (活动):代表一个用户界面,一个登录界面是一个 Activity,一个主界面也是一个 Activity,每个 Activity 都是一个窗口,用户可以在其中进行交互。
MainActivity.java是默认的主入口 Activity。
-
Service (服务):在后台执行长时间运行的任务,没有用户界面,播放音乐、下载文件,Service 不像 Activity 那样会自动停止。
-
Broadcast Receiver (广播接收器):用于接收系统或应用发出的广播消息,当手机电量低时,系统会发出一个广播,你的应用可以注册一个接收器来响应这个事件。
-
Content Provider (内容提供者):用于管理应用的数据,并允许其他应用安全地访问这些数据,手机上的联系人信息就是由一个 Content Provider 管理的。
对于初学者,我们先专注于 Activity。
UI 布局
Android UI 通常使用 XML 文件来定义,这种方式直观且易于维护。
activity_main.xml:打开这个文件,你会看到一些 XML 标签,如TextView(文本视图)、Button(按钮)、EditText(输入框)等。- 布局类型:XML 文件的根标签决定了布局方式。
LinearLayout:线性布局,子元素垂直或水平排列。RelativeLayout:相对布局,子元素相对于其他元素或父容器定位。ConstraintLayout:约束布局,是目前最推荐的布局方式,可以灵活地创建复杂的界面。
第三部分:实战演练
实战 1:显示 "Hello, World!"
- 打开
app/res/layout/activity_main.xml。 - 默认情况下,已经有一个
TextView显示 "Hello World!"。 - 你可以通过修改
app/res/values/strings.xml来改变显示的文本:<!-- strings.xml --> <resources> <string name="app_name">My First App</string> <string name="hello_world">你好,世界!</string> <!-- 修改这里 --> </resources> - 回到
activity_main.xml,找到TextView的android:text属性,将其值改为@string/hello_world:<!-- activity_main.xml --> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" <!-- 引用 strings.xml 中的字符串 --> android:textSize="24sp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> - 点击 Android Studio 顶部的绿色 "Run" 按钮(或按
Shift + F10),选择一个模拟器或连接的物理设备,运行应用,你应该能看到屏幕中央显示 "你好,世界!"。
实战 2:添加一个按钮并响应点击
-
修改布局:在
activity_main.xml中,在TextView下面添加一个Button。<!-- activity_main.xml --> <TextView ... /> <Button android:id="@+id/my_button" <!-- 为按钮设置一个唯一的 ID --> android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="点击我" app:layout_constraintTop_toBottomOf="@id/hello_text" <!-- 约束到 TextView 下方 --> app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" />注意:给
TextView也加上android:id="@+id/hello_text",以便在 Button 中引用它。 -
编写 Java 代码:打开
app/java/.../MainActivity.java。 -
在
onCreate方法中,编写代码来获取按钮实例并设置点击监听器。// MainActivity.java package com.example.myfirstapp; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 加载布局文件 // 1. 通过 ID 找到按钮 Button myButton = findViewById(R.id.my_button); // 2. 为按钮设置点击监听器 myButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 3. 当按钮被点击时,执行这里的代码 TextView helloText = findViewById(R.id.hello_text); helloText.setText("你点击了按钮!"); // 也可以使用 Toast 显示一个简短的提示信息 Toast.makeText(MainActivity.this, "按钮被点击了", Toast.LENGTH_SHORT).show(); } }); } } -
运行应用:再次点击 "Run" 按钮,现在点击屏幕上的按钮,你会发现文字变成了 "你点击了按钮!",并且屏幕底部出现了一个短暂的提示。
第四部分:进阶学习
掌握了基础后,你可以开始学习更高级的主题:
-
数据存储:
- SharedPreferences:用于存储简单的键值对数据(如用户设置)。
- 文件存储:将数据存储在设备的文件系统中。
- SQLite 数据库:用于存储结构化的关系型数据。
- 网络数据:从服务器获取 JSON 或 XML 数据。
-
网络编程:
- 使用
HttpURLConnection或第三方库如 OkHttp 发送 HTTP 请求。 - 使用 Gson 或 Moshi 等库解析 JSON 数据。
- 使用
-
多线程:
- Android 主线程(UI 线程)不能执行耗时操作(如网络请求),否则会导致应用卡顿(ANR - Application Not Responding)。
- 学习使用
AsyncTask(已废弃,但原理重要)、Thread+Handler,以及现代的Executor和Coroutines(Kotlin)。
-
使用第三方库:
- Glide 或 Picasso:用于高效加载和显示网络图片。
- Retrofit:类型安全的 HTTP 客户端,简化网络请求。
- Material Design:使用 Google 的 Material Design 组件库,构建美观现代的 UI。
第五部分:发布你的应用
当你完成应用开发后,可以将其发布到 Google Play Store。
- 生成签名密钥:你需要一个数字密钥来为你的应用签名,这确保了应用的真实性和完整性。
- 构建发布版本:在 Android Studio 中,选择
Build -> Generate Signed Bundle / APK,选择 APK 或 App Bundle 格式,并使用你的密钥进行签名。 - 准备应用商店信息:编写应用描述、截图、图标等。
- 发布到 Google Play Console:注册 Google Play 开发者账户(需要一次性 25 美元注册费),然后上传你的 APK/App Bundle,并填写所有必要信息,最后提交审核。
学习资源推荐
- 官方文档:Android Developers 官网 是最权威、最准确的学习资料。
- 教程网站:
- ProAndroidDev (Medium):高质量的进阶文章。
- Android Arsenal:收集优秀的开源库和工具。
- 视频教程:B站、YouTube 上有大量免费和付费的优质视频课程。
- 书籍:
- 《Android 编程权威指南》(Big Nerd Ranch Guide):经典入门书籍。
- 《Android 实战》:案例驱动,适合有一定基础后学习。
学习 Android 开发是一个循序渐进的过程:
- 打好 Java 基础,特别是 OOP。
- 熟悉 Android Studio 和项目结构。
- 理解四大核心组件,尤其是 Activity。
- 掌握 UI 布局 和数据绑定。
- 通过小项目 实践,如计算器、天气应用、待办事项列表等。
- 学习高级主题,如网络、数据库、多线程。
- 持续关注官方文档和社区,保持学习。
祝你学习顺利,早日开发出自己的第一个 Android 应用!
