移动应用概论 · 环境入门

    |     2015年4月17日   |   开发环境   |     0 条评论   |    1911

适配版本: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 自有生态
与本课 主战场 只对比 反面案例 了解 + 技能迁移

两个要点:

  1. Windows Phone 课堂意义:技术演示好不等于平台能活,生态往往比技术更致命。
  2. 鸿蒙 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 安装与首次启动

  1. 安装路径不要含中文和空格(例:D:\Android\AndroidStudio)。
  2. 首次向导选 Standard 即可;SDK 装到空间充足的盘(至少预留 20 GB)。
  3. 启动后检查两处:

    • 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. 创建第一个工程(六步 + 四个坑)

  1. 打开 Android Studio → New Project → 左侧选 Phone and Tablet。

  2. 模板选 Empty Views Activity(界面右下角有 XML 角标)→ Next。

  3. 配置页:

    • 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
  4. Finish → 等 Gradle Sync 完成(首次 3–10 分钟)。

  5. 认识三个文件(后面第 7 节细讲)。

  6. 点工具栏绿色 ▶ 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,能看到真实目录:

Day01HelloWorld/ ├── gradle/wrapper/gradle-wrapper.properties ← 锁死 Gradle 版本(8.13) ├── settings.gradle.kts ← 模块清单、仓库地址 ├── build.gradle.kts ← 项目级:AGP 插件版本 ├── gradle/libs.versions.toml ← 依赖版本号(Otter 2 新增写法) └── app/ ├── build.gradle.kts ← 模块级:SDK 版本、依赖(常改) └── src/main/ ├── AndroidManifest.xml ← ① 身份证:组件与权限登记 ├── java/edu/cdp/android/day01/ ← ② Java 代码(一屏一个类) │ └── MainActivity.java └── res/ ← ③ 资源 ├── layout/activity_main.xml ← 界面长什么样 ├── values/ ← strings / colors / themes ├── drawable/ ← Shape、Selector(第 2 日起) └── mipmap-*/ ← 应用图标

三个概念(第 1 日只要求点到为止):

  • Activity = 手机上的一屏界面,对应一个 Java 类。
  • 布局 XML = 这屏界面的控件摆放,编译期生成资源 ID(R.layout.activity_main)。
  • Manifest = 给系统登记的清单;不登记(<activity>)的 Activity 无法启动。

MainActivity.java 的核心是这一行:

setContentView(R.layout.activity_main); // 把 XML 布局贴到屏幕上

完整目录说明见 资料/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. 今日自测

  1. 功能机与智能机,各用一句话说清差别。
  2. Windows Phone 在课堂上用来说明什么道理?
  3. 鸿蒙 NEXT 和”能跑 APK 的早期鸿蒙”有什么不同?
  4. 说出 minSdk / targetSdk / compileSdk 各自管什么。
  5. Otter 2 里新建 Java + XML 工程,模板该选哪个?

10. 练习

  1. 完成 Android Studio 2025.2.2 安装并成功运行 HelloWorld,提交运行截图:学号_姓名_Android第01日.jpg。
  2. 表格:对比 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 虚拟化未开,或改用真机
转载请注明来源:移动应用概论 · 环境入门
本文链接地址:https://ai.zhousir.top/?p=281

上一篇:

下一篇:

回复 取消