65.9K
CodeProject 正在变化。 阅读更多。
Home

如何让Windows PC上的Android Studio速度变快

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.78/5 (19投票s)

2014 年 8 月 5 日

CPOL

8分钟阅读

viewsIcon

138423

文章 #2 - 如何让Windows PC上的Android Studio速度变快。

引言

Android Studio 是一个功能强大、特性丰富的开发环境。 然而,在很多 Windows PC 上,它如果没有经过优化,常常会运行得非常缓慢。 本文将向您展示如何利用 Intel 虚拟化技术扩展来让它运行得飞快,并且使用起来更愉快。

背景

要理解本文,您只需要对如何设置 Windows 8 PC 有基本的了解。 您必须拥有 PC 的管理员权限才能使用本教程。 

模拟器的困境

模拟器是一个复杂的软件包,通常用于模拟硬件设备。 它可以让您更轻松、更快速地为目标设备编写软件,因为您可以直接在 PC 上进行开发,而无需在每次迭代应用时将代码传输到设备上。 Android Studio 使用开源的 QEMU 包来模拟各种硬件设备。 像 QEMU 这样的模拟器会将您为目标设备编写的代码翻译成您的 PC 可以执行的字节码。 然而,这种翻译需要时间,并且在没有硬件辅助的情况下,它可能会是一个相对缓慢的操作。

Intel 虚拟化技术 (IVT)

大多数现代基于 Intel 的主板都支持 Intel 的虚拟化技术 (IVT)。 IVT 为编写利用其特性的程序提供了特殊的功能,这些功能可以大大提高模拟器等软件的执行速度。 例如,在没有 IVT 的情况下,我的带有 Intel i5 四核处理器和 8 GB RAM 的 ASUS 主板上的 Android Studio 需要几分钟才能加载。 启用 IVT 后,仅需 30 秒,并且 IDE 运行速度也更快。

Intel 处理器识别实用程序 (IPI)

在开始之前,Intel 提供了一个免费的实用程序,您应该下载并运行,名为 Intel 处理器识别实用程序 (IPI)。 它会告诉您您的 CPU 是否支持 IVT,并提供有关它的丰富其他信息。 这是该实用程序在您选择 CPU 技术选项卡时显示的内容:

正如您所见,Intel 虚拟化技术和 Intel VT-x 都已启用,这表明我的系统当前已完全设置为支持 IVT。 然而,这是因为我采取了特殊措施启用了 IVT。 您的系统很可能显示这两个功能为禁用

问题所在

有一个棘手的问题使得设置 IVT 比正常情况更复杂。 一些 Windows 应用程序和游戏使用 Intel 的Hypervisor技术 才能正常运行,而有些则完全无法运行,例如 Windows Phone 开发中使用的 Windows Phone 模拟器。 这是一个问题,因为 Hypervisor 和 IVT 是不兼容的!  换句话说,启用一个就意味着必须关闭另一个。 由于 Hypervisor 通常默认开启,因此当您运行 IPI 实用程序时,通常会发现 IVT 未开启。 因此,仅仅进入 BIOS 并启用 IVT 通常不足以开启 IVT。 解决方案? 您需要设置独立的启动配置文件,就像我一样,一个用于 Hypervisor,一个用于 IVT。 这是一个相当直接的过程,但前提是您拥有某些关键但难以找到的关键信息。 幸运的是,本文为您提供了简单的步骤。

步骤 1 - 为 Android Studio 设置启动配置文件

在早期版本的 Windows 中,设置多个启动配置文件更容易,因为只需使用文本编辑器编辑一个特殊的系统文件即可。 在 Windows 8 中,您必须使用一个晦涩的系统实用程序,称为bcdedit

注意:编辑启动文件时要小心,否则可能会导致系统无法运行! 使用这些信息风险自负!

首先,以提升的命令权限打开命令提示符:

输入以下命令以查看您当前已设置的启动配置文件

引用

bcdedit /enum /v

这告诉 bcdedit 以详细模式列出启动文件中的所有条目。 这是我的配置。

忽略描述为“Windows Boot Manager”的条目。 如您所见,我有两个条目

  • Windows 8.1
  • Windows 8.1 for Android

当我在启动时,系统会向我展示这两个选项。 我使用第一个选项是当我需要 Hypervisor,用于 Windows Phone 开发时。 当我需要 IVT,用于 Android Studio 开发时,我使用第二个选项。 如果您尚未修改它,当您列出启动文件内容时,您只会看到一个 Windows 8.1 的条目。

我的两个启动条目之间唯一的区别是hypervisorlaunchtype键的状态。 当我进行 Windows 开发工作时,该键的值为Auto,以便 Hypervisor 开启,这会禁用 IVT。 当我进行 Android 开发时,该键的值为Off,禁用 Hypervisor,从而允许启用 IVT。

创建新启动配置文件的最简单方法是复制现有的 Windows 8.1 启动配置文件,然后修改hypervisorlaunchtype键的值。 执行以下简单步骤来完成此操作,但请务必小心

  • 使用命令提示符编辑工具,突出显示并复制 Windows 8.1 条目的标识符到剪贴板。 例如,从上面的列表可以看出,我的Windows 8.1条目标识符是{c425d97b-5abe-11e3-9eec-cccc56525e2c}确保包含大括号
  • 通过粘贴您的 Windows 8.1 标识符 (guid) 来构建 bcdedit copy 命令,使其看起来像这样:

    bcdedit /copy {您的 WINDOWS 8.1 IDENTIFIER} /d "Windows 8.1 for Android"

    按 Enter 执行。 这将创建一个 Windows 8.1 条目的副本,描述为“Windows 8.1 for Android”,但拥有自己的标识符
  • 再次执行命令以列出您的启动配置文件内容。 您应该看到新的启动配置文件条目。
  • 突出显示并复制您Windows 8.1 for Android启动配置文件条目的标识符到剪贴板。
  • 构建bcdedit命令以禁用新启动配置文件条目的 Hypervisor,如下所示: 

    bcdedit /set {WINDOWS 8.1 FOR ANDROID IDENTIFIER} hypervisorlaunchtype Off

    在指示位置插入您的 Windows 8.1 for Android 启动条目的标识符
  • 再次执行命令以列出您的启动配置文件内容。 确保hypervisorlaunchtype键确实设置为Off

恭喜! 现在您有两个启动配置文件,一个用于使用 Hypervisor 的 Windows PC,一个用于启用 IVT 的 Android Studio 开发。

步骤 2 - 在 BIOS 中启用 IVT

您需要确保在 BIOS 中启用了 IVT。 每个 BIOS 都略有不同,因此我无法提供确切的说明。 但是,您只需要查找Intel Virtualization TechnologyIntel VT-x等术语。 您应该会在 BIOS 设置屏幕中看到其中一个术语。 重新启动系统并进入 BIOS 设置。 查找上述术语的相关设置。 您通常会在类似CPUAdvanced SettingsO/S Features等的菜单项下找到它们。 请确保您找到的所有相关条目都设置为“On”或“Enabled”。 

重要提示:保存对 BIOS 的更改后,您需要关闭系统以“使更改生效”!  执行此操作,然后重新启动系统。 执行此操作后,您将看到一个屏幕,要求您选择一个启动配置文件。 请确保选择您刚刚创建的新配置文件,标题为“Windows 8.1 for Android”。

步骤 3 - 设置 Intel x86 模拟器加速器

最后一步是将Intel x86 Emulator Accelerator软件包安装到 Android Studio 中。 这将添加 Android Studio 使用 IVT 所需的扩展,从而大大提高 IDE 和设备模拟器的运行速度和流畅度。

请按照以下简单步骤操作

  • 运行上面的 IPI 实用程序,确保 IVT 已完全启用。 如果未启用,您需要先诊断并解决该问题,因为如果 IVT 未启用,HAXM 安装程序将无法运行。
  • 运行 Android Studio。
  • 确保首先安装所有推荐的 Android Studio 更新!
  • 加载 Android SDK Manager。 在标记为Extras的 Package 文件夹下,查找Intel x86 Emulator Accelerator (HAXM Installer)软件包(请参阅下图)。


     
  • 勾选该软件包的复选框并进行安装。 这实际上不会安装扩展。 相反,它会将HAXM Installer下载到您硬盘上的一个目录。
  • 在硬盘上找到 HAXM 安装程序。 在我的 PC 上,它安装到了以下目录:

    C:\Users\Robert\AppData\Local\Android\android-studio\sdk\extras\intel\Hardware_Accelerated_Execution_Manager
     
  • 运行名为intelhaxm.exe的实用程序并按照步骤操作。

虽然可能不是必需的,但现在重新启动系统,或者至少退出并重新加载 Android Studio 是个好主意。

步骤 4 - 成功!

您现在已设置 Android Studio 来利用 IVT。 您应该会看到 Android Studio 和调试器启动时间有显著的改善,并且 IDE 和代码跟踪操作也有明显的提高。 请记住,当您想运行需要 Hypervisor 支持的应用程序时,您需要重新启动系统,并从选项列表中选择Windows for 8.1启动配置文件,而不是Windows 8.1 for Android选项。

 

© . All rights reserved.