移动应用概论 · 环境入门
适配版本:Android Studio Otter 2 | 2025.2.2
本课语言:Java(不写 Kotlin、不用 Compose)
1. 一页约定速查卡
先记住这张表,后面全部按它执行:
| 项目 | 本课取值 | 说明 |
|---|---|---|
| IDE | Android Studio Otter 2(2025.2.2) | 机房离线包:../soft/android-studio-2025.2.2.8-windows.exe |
| 新建模板 | Empty Views Activity | 不是 Empty Activity(那是 Compose + Kotlin) |
| 语言 | Java | 向导里手动切换,不支持自动带出 |
| JDK / Gradle JDK | 17 或 21 | IDE 自带 jbr-21 即可,不必另装 |
| minSdk | 26(Android 8.0) | 低于此版本的手机装不上 |
| targetSdk / compileSdk | 36(Android 16) | 跟着 Otter 2 默认走 |
| Gradle | 8.13(Wrapper 指定) | 离线包:../soft/gradle-8.13-bin.zip |
| 构建脚本 | build.gradle.kts + libs.versions.toml |
Otter 2 默认形态,本课只改 SDK 版本号 |
| 界面写法 | XML 布局 + findViewById | 不用 Compose、不用 ViewBinding(后续再讲) |
2. 功能机 vs 智能机(各一句话)
| 功能机 | 智能机 | |
|---|---|---|
| 主要能力 | 通话、短信、通讯录 | 触屏、应用商店、摄像头与传感器、常在线 |
| 输入 | 物理键盘、小屏 | 触屏手势 |
| 软件来源 | 厂商预装为主(Java ME、Brew 等) | 第三方开发者按统一接口开发、商店分发 |
| 一句话 | 能通信,长不出应用产业 | 操作系统变成平台,于是有了”移动应用开发”岗位 |
本课训练的是智能机上的应用层开发(界面、业务、本地存储、简单网络),不是手机底层固件。
3. 四大移动操作系统
| 维度 | Android | iOS | Windows Phone | 鸿蒙 HarmonyOS |
|---|---|---|---|---|
| 归属 | Google(AOSP 开源) | 苹果(闭源) | 微软(已停更) | 华为 |
| 开发语言 | Java(本课)/Kotlin | Swift / Objective-C | 历史平台 | 早期兼容 APK;NEXT 走 ArkTS 自有生态 |
| 分发 | APK / 各应用商店 | App Store | 已随系统停更 | 华为应用市场;NEXT 自有生态 |
| 与本课 | 主战场 | 只对比 | 反面案例 | 了解 + 技能迁移 |
两个要点:
-
Windows Phone 课堂意义:技术演示好不等于平台能活,生态往往比技术更致命。 -
鸿蒙 NEXT ≠ Android。学过 Android 的界面、组件、生命周期思想有帮助,但不等于会鸿蒙原生开发。
为什么本课选 Android + Java: 对齐课标与先修 Java 课程;高职 Android 初级岗位仍有明确入口;全班统一 minSdk 26 便于机房联调。
4. Android 版本与三个 SDK 开关
版本详细历史见
资料/01Android 版本历史完整详解.md。
Android 9~12:API 级别 = 版本号 + 19(Android 10 → API 29)。
Android 13 起:因 12L 占用 API 32,改为版本号 + 20(Android 16 → API 36)。
| 开关 | 中文 | 决定什么 |
|---|---|---|
minSdk |
最低支持版本 | 能装多少台手机(低于此版本装不上) |
targetSdk |
目标适配版本 | 系统用哪套行为对待你(应用商店上架政策也看它) |
compileSdk |
编译版本 | 你能写哪些 API(一般不打进 APK 行为) |
记忆口诀:minSdk 向下覆盖,targetSdk 向上适配,compileSdk 只管编译。
5. 环境准备(Otter 2 要点)
5.1 安装与首次启动
-
安装路径不要含中文和空格(例: D:\Android\AndroidStudio)。 -
首次向导选 Standard 即可;SDK 装到空间充足的盘(至少预留 20 GB)。 -
启动后检查两处: • SDK:File → Settings → Languages & Frameworks → Android SDK,确认已勾 Android 16(API 36)Platform 与 Build-Tools。 • Gradle JDK:Settings → Build, Execution, Deployment → Build Tools → Gradle → Gradle JDK,选 jbr-17 或 jbr-21(IDE 自带即 21)。
5.2 下载慢 / 同步卡住的解决办法
| 现象 | 处理 |
|---|---|
| SDK 组件下载不动 | SDK SDK Update Sites 加清华镜像:https://mirrors.tuna.tsinghua.edu.cn/android/repository/ |
| Gradle 一直 Downloading | 改 gradle/wrapper/gradle-wrapper.properties:distributionUrl=https\://mirrors.aliyun.com/gradle/distributions/gradle-8.13-bin.zip |
| 完全无网 | 把 gradle-8.13-bin.zip 放本地:distributionUrl=file\:///D:/soft/gradle-8.13-bin.zip |
| 依赖解析失败 | 确认 settings.gradle.kts 中有 google() 与 mavenCentral() |
改完必须点 Sync Now(或 File → Sync Project with Gradle Files)。
6. 创建第一个工程(六步 + 四个坑)
-
打开 Android Studio → New Project → 左侧选 Phone and Tablet。
-
模板选 Empty Views Activity(界面右下角有 XML 角标)→ Next。

-
配置页:
• Name: Day01HelloWorld• Package name: edu.cdp.android.day01• Save location:不要中文路径 • Language:务必改成 Java(默认是 Kotlin) • Minimum SDK:选 API 26 (“Oreo”; Android 8.0) • Build configuration language:保持默认 Kotlin DSL -
Finish → 等 Gradle Sync 完成(首次 3–10 分钟)。
-
认识三个文件(后面第 7 节细讲)。
-
点工具栏绿色 ▶ Run,选模拟器或真机运行。
四个高频坑:
| 坑 | 症状 | 解决 |
|---|---|---|
| 选成 Empty Activity | 没有 activity_main.xml,MainActivity.kt 里是 setContent{} |
删掉重来,选 Empty Views Activity |
| 忘了切 Java | 生成 .kt 文件 |
向导第二页 Language 切 Java |
| Minimum SDK 选太高/太低 | 机房模拟器跑不起来,或后续 API 报错 | 统一 API 26 |
| 找不到 build.gradle | 只有 build.gradle.kts |
这是 Otter 2 默认,操作位置相同 |
若 wizard 页面与你屏幕不一致,以 Otter 2 实际界面为准,关键是模板名和语言两项。
7. 看懂工程:源码三件套
建议把左上角项目视图切到 Project,能看到真实目录:
三个概念(第 1 日只要求点到为止):
-
Activity = 手机上的一屏界面,对应一个 Java 类。 -
布局 XML = 这屏界面的控件摆放,编译期生成资源 ID( R.layout.activity_main)。 -
Manifest = 给系统登记的清单;不登记( <activity>)的 Activity 无法启动。
MainActivity.java 的核心是这一行:
完整目录说明见
资料/02工程目录结构说明.md。
8. 运行:模拟器与真机
| 方式 | 操作 | 适用 |
|---|---|---|
| 模拟器 | 右侧 Device Manager → Create Device → 选 Pixel 系列 + API 36 系统镜像 → 启动 | 机房统一推荐 |
| 真机 | 手机开开发者选项 + USB 调试,数据线连接,选择 Allow | 模拟器跑不动时备用 |
验收标准:屏幕上出现 “Hello World!” 字样即为通过。 截图保存,命名 学号_姓名_Android第01日.jpg。
模拟器起不来多半是 BIOS 未开虚拟化(VT-x),联系机房管理员或改用真机;详细步骤见
资料/03Android-Studio-USB调试真机映射屏幕画面.md。
9. 今日自测
-
功能机与智能机,各用一句话说清差别。 -
Windows Phone 在课堂上用来说明什么道理? -
鸿蒙 NEXT 和”能跑 APK 的早期鸿蒙”有什么不同? -
说出 minSdk / targetSdk / compileSdk 各自管什么。 -
Otter 2 里新建 Java + XML 工程,模板该选哪个?
10. 练习
-
完成 Android Studio 2025.2.2 安装并成功运行 HelloWorld,提交运行截图: 学号_姓名_Android第01日.jpg。 -
表格:对比 Android / iOS / Windows Phone / 鸿蒙,每列 2–3 条特征 + 一句”和本课的关系”。
提交:下次课前 1 天,由组长统一收齐。
附:常见报错速查
| 报错 | 原因与处理 |
|---|---|
SDK location not found |
根目录缺 local.properties,用 SDK Manager 重新指定路径 |
Could not resolve androidx.appcompat |
网络问题或缺少 google() 仓库,见第 5.2 节 |
Gradle sync failed: Plugin not found |
AGP 下载失败,换镜像后 Sync Now |
Unsupported class file major version |
Gradle JDK 版本不对,回到 jbr-17 / jbr-21 |
找不到 activity_main.xml |
模板选成了 Compose,重建工程 |
| 模拟器黑屏/无法启动 | BIOS 虚拟化未开,或改用真机 |
转载请注明来源:移动应用概论 · 环境入门







