主要内容
◼ Android开发环境:Android Studio + AVD 或真机 + Java
◼ 基本 UI 组件、布局、主题、 RecylerView 组件
◼ Intent 机制(显式Intent、隐式Intent、Intent传递数据)
◼ Android 四大核心组件:
◼ Activity(生命周期、选项菜单、ActionBar)
◼ Service(后台服务、前台服务、绑定服务)
◼ BroadcastReceiver(自定义广播、系统广播)
◼ ContentProvider(ContentResolver 查询、常用数据集)
◼ 数据存储和访问:SharedPreference、Room 数据库(ORM 框架)
◼ Android 网络编程:WebView、HttpURLConnection
Android简介
◼ 2007 年 11 月谷歌发起成立开放手机联盟 OHA(Open Handset Alliance),共同致力开发 Android 移动系统,目前联盟成员 80+。
◼ 2008 年 9 月,google 发布 Android 1.0;
◼ 是第一个免费、开源的手机操作系统;
◼ 基于 Linux 内核,使用 Java 语言开发;
◼ 2008 年 10 月,第一款 Android 手机 HTC G1 在美国上市。
Android 由美国 Google 公司创建和维护,成为第一款免费开源的手机操作系统,其基于 Linux 内核,使用 Java 语言开发。
Android体系结构
应用程序层
◼ Android 平台的应用层上包括各类与用户直接交互的应用程序,或由 java 语言编写的运行于后 台的服务程序。
◼ 例如:SMS 短信,电话拨号,图片浏览器,日历,游戏,地图,web 浏览器等程序,以及开发人员开发的其他应用程序。
应用程序框架层
系统运行库层
◼ 程序库:
◼ C库、媒体库、Surface Manager、WebKit、SGL、3D libraries、FreeType、SSL、SQLite等
◼ Android 运行库:
◼ 每一个 Android 应用程序都在 它自己的进程 中运行,都拥有一个 独立的 Dalvik 虚拟机实例。
◼ Dalvik 虚拟机依赖于 Linux 内核的一些功能,比如线程机制和底层内存管理机制。
关于 JVM 和 Dalvik VM
◼ JVM:Java 虚拟机,执行 class文件(字节码 )
◼ Dalvik VM:Android 虚拟机,执行 dex 文件
◼ Dalvik 最大好处:可以根据硬件实现更大的优化,更适合移动设备
Linux 内核层
◼ Android 的核心系统服务依赖于 Linux 内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。
◼ Linux 内核也同时作为硬件和软件栈之间的抽象层。
Android系统特点
◼ 在内存和进程管理方面,Android 有自己的 运行时和虚拟机;
◼ Android 将 界面设计与程序逻辑分离,界面布局使用 XML 文件,有利于界面的修改和维护;
◼ Android 提供 轻量级的进程间通讯机制 Intent,使跨进程组件通信和发送 系统广播 成为可能;
◼ Android 提供 Service 作为无用户界面、长时间后台运行组件;
◼ 支持快速、高效的数据存储:
◼ SharedPreferences、文件存储、SQLite 数据库
◼ 四大核心组件:
◼ 为了跨进程共享数据,Android 提供 ContentProvider 接口
◼ 无需了解数据源、路径情况,对共享数据进行增删改查等操作
◼ 多媒体支持,包括常见的音频、视频和文本
◼ 多类型的连接设备,如 USB、GPS、红外、蓝牙、无线等
◼ 提供了照相机、录音机、摄像机等功能
◼ 多种传感器支持,如重力、陀螺仪、光线感应、压力等
◼ 支持位置服务和地图应用
◼ …
Android开发环境搭建
主要内容:Android Studio + Android SDK + AVD的安装和配置
安装Android Studio
Android Studio:Google 专门为 Android 量身订做的一款基于 IntelliJ IDEA 改造的 IDE
安装主要过程
安装Android SDK
◼ Android SDK:是 Android 专属的软件开发工具包
◼ Android SDK 安装过程如下:以 Android 12 (API 32) 为例
关于Intel HAXM
◼ HAXM:Hardware Accelerated Execution Manager
◼ 作用:Intel 为 Android 模拟器(AVD)提供的硬件加速工具
◼ 安装条件:需要满足 2 个条件
(1) 必须是 Intel 的 CPU(如果是 AMD CPU,则安装 Android Emulator Hypervisor Driver for AMD Processors)
(2) CPU 必须支持 Intel VT (Virtualization Technology) 虚拟化技术
备注:如果 AMD 的 CPU 则安装:Android Emulator Hypervisor Driver (for AMD Processors
查看CPU是否启用虚拟化:任务管理器中查看“性能”
注:如果Intel HAXM自动安装不成功,可以通过手工来安装:
HAXM 安装包默认在:Android Sdk 安装目录下的 extras\intel\Hardware_Accelerated_Execution_Manager 中
安装和配置AVD
◼ AVD:Android 模拟器(Android Virtual Device)
◼ AVD作用:让开发人员不需使用实体设备即可预览、开发和测试 Android 应用程序
AVD 下载速度慢:可先在设置中添加 Android SDK 国内镜像源来加速
如果碰到 gradle 下载慢可以采用阿里云镜像来加速:
修改项目根目录下的文件 build.gradle:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 buildscript {
repositories {
//google()
//jcenter()
maven { url 'https://maven.aliyun.com/repository/public/' }
maven { url 'https://maven.aliyun.com/repository/google/'}
maven { url 'https://maven.aliyun.com/repository/jcenter/'}
mavenLocal()
mavenCentral()
}
...
}
allprojects {
repositories {
//google()
//jcenter()
maven { url 'https://maven.aliyun.com/repository/public/' }
maven { url 'https://maven.aliyun.com/repository/google/'}
maven { url 'https://maven.aliyun.com/repository/jcenter/'}
mavenLocal()
mavenCentral()
}
}
AVD 下载速度慢:可先在设置中添加 Android SDK 国内镜像源来加速
添加国内镜像源:步骤1
填入开源镜像地址,如东软信息学院:http://mirrors.neusoft.edu.cn/
添加国内镜像源:步骤2
开始创建和配置 AVD:
如果 Finish 后没有显示记得刷新一下
注:AVD 模拟器位置
其他配置
编辑器字体设置
禁止自动打开上次的工程
代码提示设置:alt + /
说明:在 AS 中,”Alt+/“ 并不是代码提示功能(而是 “Cyclic Expand Word”) ,因此需要修改:
- 先在查找框中输入”Cyclic Expand Word”,然后右键 Remove 掉它的快捷键
- 接着在查找框中输入”Basic”,右键也 Remove 掉它的快捷键,然后再右键添加新的快捷键:Alt+/
附录
附录1:AS 默认的一些目录
◼ AS 安装位置:
C:\Program Files\Android\Android Studio
◼ AS 自带 JRE 位置:
C:\Program Files\Android\Android Studio\jre
◼ Android SDK:
C:\Users\用户名\AppData\Local\Android\Sdk
◼ 新建 Android 项目的位置:
C:\Users\用户名\AndroidStudioProjects
附录2:AS 常用快捷键
◼ 代码格式化:Ctrl + Alt + L
◼ 行注释:Ctrl + / 块注释: Ctrl + Shift + /
◼ 撤销键:Ctrl + Z 恢复键:Ctrl + Shift + Z
◼ 删除一行:Ctrl + Y 复制一行:Ctrl + D
◼ 移动一行:Ctrl + Shift + ↑ 或 ↓
◼ 查看类的结构:Ctrl + F12 查看继承关系:Ctrl + H
◼ 查找:Ctrl+F,向下查找:F3,向上查找:Shift + F3
◼ 替换:Ctrl + R