Android Emulator
一款基于 QEMU 的设备模拟工具,您可以使用它在实际的 Android 运行时环境中调试和测试您的应用。有关详情,请参阅 Emulator 发布说明。
注意:大多数以前由 Support Repository 软件包(例如 Android 支持库、Constraint Layout、Google Play 服务和 Firebase)提供的 API 库现在都可从 Google 的 Maven 代码库获取。使用 Android Studio 3.0 及更高版本创建的项目会自动将此代码库包含在构建配置中。如果您使用的是旧项目,则必须手动将 Google 的 Maven 仓库添加到您的 build.gradle 或 build.gradle.kts 文件中。
Intel 或 ARM 系统映像
系统映像是运行 Android Emulator 所必需的。每个平台版本都包含支持的系统映像。您也可以稍后在 AVD 管理器中创建 Android 虚拟设备 (AVD) 时下载系统映像。根据您的开发计算机处理器选择 Intel 或 ARM。
Google Play 服务
包含一组库、Javadocs 和示例,可帮助构建您的应用。如果您想使用 Google Play 服务中的 API,则必须使用 Google API 系统映像或 Google Play 系统映像。
上述列表并非全面,您可以添加其他网站以下载第三方提供的其他软件包,如下一节所述。
在某些情况下,某个 SDK 软件包可能需要另一个工具的特定最低修订版本。如果是这样,SDK 管理器会发出警告并将其依赖项添加到您的下载列表中。
编辑或添加 SDK 工具网站
在 SDK Update Sites 标签页下,您可以添加和管理托管自己工具的其他网站,然后从这些网站下载软件包。Android Studio 会从您添加的 SDK 网站检查 Android 工具和第三方工具的更新。
例如,移动运营商或设备制造商可能会提供其 Android 设备支持的其他 API 库。要使用其库进行开发,您可以通过在 SDK 管理器的 SDK Update Sites 标签页中添加其 SDK 工具网址来安装其 Android SDK 软件包。
如果运营商或设备制造商在其网站上托管了 SDK 附加组件存储库文件,请按照以下步骤将该网站添加到 Android SDK 管理器
点击 SDK Update Sites 标签页。
点击窗口顶部的 Add 。
输入第三方网站的名称和网址,然后点击 OK。
确保 Enabled 列中的复选框已选中。
点击 Apply 或 OK。
该网站提供的所有 SDK 软件包现在都会适当地显示在 SDK Platforms 或 SDK Tools 标签页中。
使用 Gradle 自动下载缺失的软件包
当您从命令行或 Android Studio 运行构建时,只要在 SDK 管理器中已接受相应的 SDK 许可协议,Gradle 就可以自动下载项目依赖的缺失 SDK 软件包。
当您使用 SDK 管理器接受许可协议时,Android Studio 会在 SDK 主目录中创建一个 licenses 目录。此 licenses 目录对于 Gradle 自动下载缺失的软件包至关重要。
如果您已在一台工作站上接受了许可协议,但想在另一台工作站上构建项目,则可以通过复制已接受的 licenses 目录来导出许可。
要将许可复制到另一台机器,请按照以下步骤操作
在安装了 Android Studio 的机器上,点击 Tools > SDK Manager。在窗口顶部,记下 Android SDK Location。
导航到该目录,并在其中找到 licenses/ 目录。
如果您没有看到 licenses/ 目录,请返回 Android Studio,更新您的 SDK 工具,然后接受许可协议。当您返回 Android SDK 主目录时,您应该会看到该目录。
复制整个 licenses/ 目录,并将其粘贴到您要构建项目的机器上的 Android SDK 主目录中。
Gradle 现在可以自动下载您的项目所依赖的缺失软件包。
请注意,此功能在您从 Android Studio 运行的构建中会自动禁用,因为 SDK 管理器会处理 IDE 缺失软件包的下载。要手动禁用此功能,请在项目的 gradle.properties 文件中设置 android.builder.sdkDownload=false。
使用命令行更新工具
在没有图形界面的系统(例如 CI 服务器)上,您无法使用 Android Studio 中的 SDK 管理器。取而代之的是,使用 sdkmanager 命令行工具来安装和更新 SDK 工具和平台。
使用 sdkmanager 安装 SDK 工具和平台后,您可能需要接受任何缺失的许可证。这也可以使用 sdkmanager 完成
$ sdkmanager --licenses
此命令会扫描所有已安装的 SDK 工具和平台,并显示任何尚未接受的许可证。系统会提示您接受每个许可证。