前言
Android Studio是Android应用开发的官方开发环境,是Android应用开发者的必备工具。Android Studio作为跨平台应用,在Ubuntu系统下的安装方式与Windows和macOS存在一些区别。由于新版Android Studio已经内置了Open JDK,网上一些老版教程仍采用先装JDK再装Android Studio的方案已经过时,使用Android Studio的内置JDK有利于与系统环境隔离,是更安全的使用方式。
一、配置KVM
如果需要使用虚拟设备进行调试,那么这一步是必不可少的;如果不需要,那么直接看第二部分就可以了。这是与Windows和macOS系统下操作相比,差别比较大的地方。
1. 确认BIOS中的CPU虚拟化功能是否开启
不同的电脑,进入BIOS的方式完全不同。本机是开机后反复按"Delete"键和"Enter"键,进入BIOS后,找到含有类似"CPU Configuration"或"Virtualization"的选项,看看CPU的虚拟化功能是否被开启,一般英特尔CPU类似"Intel Virtualization Technology"、"VT-x"、"VMX"等,超微CPU类似"Secure Virtual Machine"、"AMD-V"、"SVM Mode"等。我的英特尔i5-3317U CPU虽然很老,但是也支持虚拟化技术的;超微CPU要求就比较新了,需要4代锐龙以后的才可以。确认虚拟化功能处于开启状态,否则后面的工作无法进行。开启后,保存设置并重启计算机。
2. 检查系统KVM设置
KVM是Kernel-based Virtual Machine的缩写,可直译为基于内核的虚拟机,是Linux里自带的硬件虚拟化工具。CPU和系统的虚拟化功能都开启,才能保证后面Android虚拟设备可用。输入指令检查KVM是否已开启,一般CPU开启虚拟化状态下装的Ubuntu系统就默认开启了:
bash
# 检查 CPU 是否支持虚拟化(输出 ≥1 就是支持)
egrep -c '(vmx|svm)' /proc/cpuinfo
# 检查 KVM 模块是否加载
lsmod | grep kvm
应该看到 kvm_intel 和 kvm字样,如下图:

如果没加载,需要输入下面的指令加载:
bash
sudo modprobe kvm_intel
3. 将当前用户加入KVM权限组
开启这个配置后,需要当前用户有 /dev/kvm 的访问权才能正常使用,输入下面指令开启:
bash
sudo usermod -aG kvm $USER
权限组的修改,必须注销当前用户或重启电脑才会生效,这里直接重启:
bash
sudo reboot
重启计算机后,打开"终端",输入下面的指令来验证是否成功:
bash
groups
如果输出里有kvm这个组就说明权限生效了,如下图:

二、下载并安装Android Studio
1. 下载Android Studio
打开Android Studio中文官方网站,点击"下载Android Studio Panda 2"来下载:

网站会自动识别我们的系统,同意协议,下载Linux版:

与WIndows和macOS不同,等待下载完成后,我们只得到了一个tar.gz格式的压缩包,需要解压缩并放到合适的位置。
2. 解压Android Studio并放入/opt目录
右键点击压缩包,选择"提取到此处":

解压后是一个带版本号(如这个版本的"Panda")的文件夹,进入此文件夹后能看到一个不带版本号的文件夹,这时在窗口空白处点击右键,选择"在终端中打开":

输入下面的指令将这个不带版本号的文件夹移动到/opt目录下:
bash
sudo mv android-studio /opt/
/opt目录是Linux系统中专门用于安装第三方、独立、可选的大型应用程序 的目录,核心是自包含、隔离、便于手动管理。根据Filesystem Hierarchy Standard (FHS)的解释:其全称为Optional(可选的附加软件),用于放置非系统默认自带、不由发行版包管理器(apt/dnf/yum)管理的第三方软件。其设计理念是自包含,即一个软件的所有文件(二进制、库、配置、文档、数据)全部集中在自己的子目录里,不与系统文件(/usr、/bin、/lib)混杂,避免冲突。Android Studio完全符合这个目录的设计理念,因此将Android Studio放在这个目录下是最理想的选择。
3. 首次运行Android Studio
首次运行需要使用"终端",输入下面的指令运行(注意没有sudo):
bash
/opt/android-studio/bin/studio
首次启动后会弹出设置向导,首先是易用性提示,我们连不通谷歌网络,直接点"Don't send":

安装向导弹出,如果看到设否设置代理的提示框,点击取消,然后点"Next":

没特殊需求选择"Standard"安装即可:

安装内容提示,可以看到已经包含Android Emulator了:

接受协议:

可以看到再次提示本机已经可以运行虚拟机,点击"Next"即可开始下载安装,注意保持网络畅通:

等待安装完成,点击"Finish":

点击后即可运行Android Studio的起始界面了。巧合的是,我们从官方网站上下载的版本(Panda 2)尚未更新到服务器最新的版本(Panda 3),这里出现了更新提示,我们直接接受更新即可:(下载时是9点多,实际当天13点时,看到官网也更新了Panda 3,刚好卡在这个时间差里。)

等待重启后,即看到了最新版本的启动界面,安装完成。
三、验证Android Studio
1. 建立最简单的Hello World工程
在启动界面,点击"New Project"新建工程:

选择"Empty View Activity"模板:

设置工程名、语言、、API版本和构建语言,这里由于我们后面要用到一个Android 7.0的老机器去验证,所以我们选择Java语言、Android 7.0 API、Groovy DSL,如下图(可根据实际情况来):

点击"Finish"按钮后,Android Studio主界面将启动,这时点击最下方进度条旁边的"×"停止默认的构建。这是因为默认的Gradle地址大概率是连不通的,等了很长时间最后很可能会失败,所以先直接停止:

然后,在下图所示的文件中,找到Gradle的地址配置:

改为腾讯云地址(注意Gradle版本号按实际情况填写):
Groovy
distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-9.3.1-bin.zip
然后点击上方弹出提示框中的"Try Again",重新构建,等待构建完成:

等待完成后,可以看到上方设备列表中是"No Device"的状态,尽管Android Studio在首次安装时已经安装了Android Emulator,但是在新建的工程中同样需要手动新建虚拟设备,这一点和Windows和macOS也不太一样。
2. 新建Android虚拟设备
点击最右侧图标中的第3个"Device Manager",在这里按"+"号可以新建虚拟设备:

根据自己电脑的性能、目标程序要运行的环境选择合适的配置。由于我的电脑和目标机器都比较老我这里选择了Pixel 3作为验证用,想用更老的机器,可以勾选右侧的"Show obsolete device profile"来显示出Nexus等更早的参考机型:

根据自己的情况配置"API"和"Service",我还有个Android 11.0的机器,所以选择了"API 30":

点击"Finish",保持网络畅通,开始下载组件:

下载完成后点击"Finish"完成并退出虚拟设备配置界面:

此时可以看到,界面上方设备的设备选项中已经是刚才建立好的Pixel 3虚拟设备了:

点击运行按钮,直接在虚拟设备运行新建的模板工程:

我的机器比较慢,经过7分钟的漫长等待后可以看到程序已经在虚拟设备上跑起来了,显示出了"Hello World!"内容:

点击上方红色的停止按钮可以退出程序的执行:

至此,虚拟设备运行验证成功。
3. 实机USB调试测试
在实际上打开开发者模式,开启USB调试,USB连接配置选择"MTP",然后用USB数据线连接到电脑。一般Android设备连接到Linux系统都是免驱的,可以看到桌面山弹出了设备名字的提示:

在Android Studio的设备选项中选择刚接入的设备"FW1102",然后点击运行按钮:

等待一会之后可以看到运行成功,设备上出现了"Hello World!":

可以通过左下方的Logcat(小猫图标)来获取目标机的屏幕截图或者录屏:

至此,实机运行也验证成功。
四、创建程序快捷方式图标
点击Android Studio主界面的左上角弹出菜单栏,在"Tool"中找到"Create Desktop Entry",在弹出框中勾选"Create the entry for all users",输入密码即可完成:

下一次运行只需要在程序启动器中找到Android Studio的图标启动就可以了,不再需要命令行。到这里,Android Studio的安装就全部完成了。
总结
本文介绍了在Ubuntu系统下安装Android Studio要注意的事项,包括模拟器运行和USB实机运行的验证。