第1章 Android开发环境搭建
第 1 章 Android开发环境搭建
本章介绍了如何在个人电脑上搭建Android开发环境,主要包括:Android
开发的发展历史是怎样的、 Android Studio
的开发环境是如何搭建的、如何创建并编译App工程、如何运行和调试App。
📖1.1 Android开发简介
Android开发的历史沿革,包括Android
的发展历程和Android Studio
的发展历程两个方面。
✅Android的发展历程
安卓(Android)是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。Android操作系统最初由Andy Rubin开发,主要支持手机。
- 2005 年 8 月由Google收购注资。
- 2007 年 11 月,Google与 84 家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统,并发布了Android的源代码。
- 第一部Android智能手机发布于 2008 年 10 月,由 HTC 公司制造。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机、智能手表、车载大屏、智能家居等,并逐渐成为了人们 日常生活中不可或缺的系统软件。
- 2011 年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。
- 2013 年的第四季度,Android平台手机的全球市场份额已经达到78.1%。 2013 年 09 月 24 日谷歌开 发的操作系统Android在迎来了 5 岁生日,全世界采用这款系统的设备数量已经达到 10 亿台。
- 2019 年,谷歌官方宣布全世界有 25 亿活跃的Android设备,还不包含大多数中国设备。
Android几乎每年都要发布一个大版本,技术的更新迭代非常之快,表1-1展示了Android几个主要版本的发布时间。
表1-2 Android Studio主要版本的发布时间
Android版本号 | 对应 API | 发布时间 |
---|---|---|
Android 13 | 33 | 2022年2月 |
Android 12 | 31 | 2021年10月 |
Android 11 | 30 | 2020年9月 |
Android 10 | 29 | 2019年8月 |
Android 9 | 28 | 2018年8月 |
Android 8 | 26/27 | 2017年8月 |
Android 7 | 24/25 | 2016年8月 |
Android 6 | 23 | 2015年9月 |
Android 5 | 21/22 | 2014年6月 |
Android 4.4 | 19/20 | 2013年9月 |
✅Android Studio的发展历程
2013年5月: Android Studio首次在Google I/O开发者大会上宣布,并作为一款预览版发布。它取代了之前广泛使用的Eclipse作为Android应用程序的主要开发环境。
2014年12月: Android Studio 1.0版正式发布。这是Android Studio的第一个稳定版本,标志着其正式进入市场。
- 正式版本发布。
- 支持Gradle构建系统。
- 引入了Android虚拟设备管理器(AVD Manager)。
- 布局编辑器改进。
2015年11月: Android Studio 2.0发布。这个版本引入了许多新功能,包括即时运行(Instant Run)功能,加快了应用程序的构建和调试过程。
- 即时运行(Instant Run)功能,加速了应用程序的构建和部署。
- 引入App Indexing工具,帮助应用程序在Google搜索中获得更好的曝光。
- GPU调试器。
- 布局编辑器改进,包括可视化布局编辑和布局蓝图功能。
2017年10月: Android Studio 3.0发布。这个版本引入了一系列新的工具和功能,包括Kotlin支持、布局编辑器改进、应用程序瘦身工具等。
- Kotlin支持正式集成。
- 应用程序瘦身工具。
- 布局编辑器改进,包括ConstraintLayout支持。
- 新的Profiler工具集。
2018年5月: Android Studio 3.1发布,带来了更多的性能改进和新功能,包括Android Things模块、Android Gradle插件3.1等。
- 改进的布局编辑器,包括可折叠的代码块。
- Android Emulator快照。
- Android Things模块支持。
2018年11月: Android Studio 3.2发布,继续改进性能和开发者体验,包括应用包分析器、可折叠的代码块等。
- Android App Bundle的全面支持。
- 新的导航编辑器。
- Android Slices支持。
- 改进的性能和稳定性。
2019年1月:Android Studio 3.3
- C++代码改进。
- 改进的应用包分析器。
- 内存Profiler改进。
- Android Gradle插件3.3。
2019年4月:Android Studio 3.4
- 改进的CPU Profiler。
- Android Gradle插件3.4。
- Jetpack Compose预览版。
- 对Android Q的支持。
2019年9月: Android Studio 3.5发布。这个版本聚焦于提高稳定性和性能,还引入了多个新的功能,如资源管理器、代码缓存等。
- 资源管理器。
- 项目结构对话框改进。
- 64位版本的应用打包支持。
- 布局编辑器改进。
2020年2月: Android Studio 3.6发布,包含了对Kotlin和Jetpack的更好支持,以及一些质量改进。
- Kotlin DSL脚本支持。
- Layout Inspector改进。
- 测试向导。
- Android Gradle插件3.6。
2020年9月: Android Studio 4.0发布,引入了MotionLayout可视化工具、对Kotlin DSL脚本的增强支持以及更多的性能改进。
2021年5月: Android Studio 4.2发布,带来了更快的构建速度、Jetpack Compose支持、新的设备管理器等功能。
2021年11月: Android Studio 4.3发布,继续改进性能、稳定性和功能,包括更好的设备管理、新的编码助手等。
📖1.2 搭建Android Studio开发环境
从Android Studio 2.2
版本开始,Android Studio
自带了Java开发工具包(JDK),这是为了提供更方便的开发环境和简化配置。因此不再需要单独安装和配置Java环境。这一改变使得Android
开发的环境设置更加简单和一致。
请注意,Android Studio自带的JDK版本可能会随着不同版本的Android Studio而有所变化,但它会自动管理并使用适用于当前版本的JDK。如果您需要使用特定版本的JDK,您可以手动配置Android Studio以使用所需的JDK版本。
✅下载
第一步:下载Android Studio
官网地址:https://developer.android.google.cn/studio
Android Gradle 版本 :https://developer.android.google.cn/studio/releases/gradle-plugin?hl=zh-cn#updating-plugin
✅安装
- 打开您下载并保存了 Android Studio 安装文件的文件夹。
- 双击下载的文件。
- 如果您看到有关允许安装程序更改计算机的用户账户控制对话框,请点击是确认该安装。
此时将显示 Welcome to Android Studio Setup 对话框。
- 点击 Next 开始安装。
- 接受所有步骤的默认安装设置,如果你想换默认安装位置,可以在这一步选择其他安装位置。
- 安装完成后,点击 Finish 以启动 Android Studio。
- 在安装过程中,设置向导会下载并安装开发 Android 应用所需的其他组件和工具。这可能需要一些时间,具体取决于您的网速。在此期间,您可能会看到针对 Windows 命令处理程序的用户账户控制对话框。点击是以接受该对话框。
在 Android Studio 首次启动时,选择您的主题偏好设置(浅色或深色)。本课程中的屏幕截图使用的是浅色主题,但您可以选择自己偏好的主题。
您可能还会收到有关 adb.exe 的 Windows 安全提醒。如有需要,请点击允许访问,以继续安装。
下载并安装完成后,点击 Finish。
此时将显示 Welcome to Android Studio 窗口,您可以随时开始创建应用!
✅创建App工程
- 创建一个空项目
- 填写项目配置信息
- 创建成功
至此空项目就创建完毕,
✅Gradle版本对应关系
简单回顾一下JDK和Gradle:
JDK (Java Development Kit)
:Java开发工具包,它是用于开发Java应用程序的软件开发工具的集合。JDK包括Java运行时环境(JRE)和一系列工具(编译器、调试器等),它为Java开发人员提供了创建、编译、调试和运行Java应用程序的环境。Gradle
是一种构建自动化工具,用于构建(build)、测试、部署和管理项目。它是一个开源工具,采用了基于Groovy或Kotlin的领域特定语言(DSL)来描述构建脚本。Gradle的主要目标是提供灵活性、可扩展性和性能。
Gradle版本有啥关系?怎么去选择版本呢?官网给了我们答案,看下面网址:
官网地址:https://developer.android.google.cn/studio/releases/gradle-plugin?hl=zh-cn
Gradle插件与Gradle版本对应
Android Studio版本对应的Gradle插件范围
比如你装的是2022.2.1版本的Android Studio,则Gradle版本需要在3.2-8.0之间
切换JDK版本在File->Setting->Gradle中可以切换
而Gradle在Project Structure中进行配置
✅目录结构
App工程分为两个层次:
- 项目
- 模块
模块依附于项目,每个项目至少有一个模块,也能拥有多个模块般所言的“编译运行App”,指的是运行某个模块,而非运行某个项目,因为模块才对应实际的App。
App项目下面有两个分类: app (代表app模块) 、Gradle Scripts。 app下面有3个子目录,Gradle Scripts下面主要是工程的编译配置文件
app
src
main
Java
:存放Java代码res
:存放当前模块的资源文件AndroidManifest.xml
:清单文件,App的运行配置文件
build.gradle
:模块级自动化构建工具,类似maven
gradle.properties
:该文件用于配置编译工程的命令行参数,一般无须改动build.gradle
:项目级自动化构建工具,类似mavensettings.gradle
:该文件配置了需要编译哪些模块。初始内容为include app',表示只编译app模块local.properties
:项目的本地配置文件,它在工程编译时自动生成,用于描述开发者电脑的环境配置,包括SDK的本地路径、NDK的本地路径等。
✅创建新的App页面
- 在layout目录下创建xml文件
- 创建xml对应的Java代码
- 在AndroidManifest.xml中注册页面配置
✅Activity的创建和跳转
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Button button = findViewById(R.id.button_feeRules);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent();
intent.setClass(TestActivity.this, Test2Activity.class);
startActivity(intent);
}
});
}
✅导入已有的工程
若要将现有的本地项目导入 Android Studio,请按以下步骤操作:
- 依次点击 File > New > Import Project。
- 在显示的窗口中,导航到您要导入的项目所在的根目录。
- 点击 OK。
✅编译App工程
Android Studio跟IDEA一样,被改动的文件会自动保存,无须开发者手工保存。它还会自动编译最新的代码,如果代码有误,编辑界面会标红提示出错了。但是有时候可能因为异常关闭的缘故,造成Android Studio的编译文件发生损坏,此时需要开发者手动重新编译,手动编译有以下 3 种途径:
( 1 )依次选择菜单Build→Make Project,该方式会编译整个项目下的所有模块。
( 2 )依次选择菜单Build→Make Module ,该方式会编译指定名称的模块。
( 3 )先选择菜单Build→Clean Project,再选择菜单Build→Rebuild Project,表示先清理当前项目,再对整个项目重新编译。不管是编译项目还是编译模块,编译结果都展示在Android Studio主界面下方的Build窗口中,如图1-28 所示。 由编译结果可知,当前项目编译耗时 2 分 29 秒,共发现了 1 个警告,未发现错误。
📖1.3 运行和调试App
✅创建内置模拟器并运行
所谓模拟器,指的是在电脑上构造一个演示窗口,模拟手机屏幕的App运行效果。
- Tools->Device Manager,创建Device
- 选择手机类型和想要的手机型号
- 选择手机模拟设备对应的android版本
- 至此创建手机模拟器完成
✅观察App运行时日志
虽然在模拟器上能够看到App的运行,却无法看到App的调试信息。相比Java代码可以用System.out.println
很方便地向IDEA
的控制台输出日志,但Android Studio
不使用System.out.println
,而是采用Log
工具打印日志。有别于System.out.println
,Log工具将各类日志划分为 5 个等级,每个等级的重要性是不一样的,这些日志等级按照从高到低的顺序依次说明如下:
- Log.e:表示错误信息,比如可能导致程序崩溃的异常。
- Log.w:表示警告信息。
- Log.i:表示一般消息。
- Log.d:表示调试信息,可把程序运行时的变量值打印出来,方便跟踪调试。
- Log.v:表示冗余信息。