配置 Android Studio
Android Studio 提供诸多向导和模板,可用于验证系统要求(例如 Java 开发工具包 (JDK) 和可用内存)和配置默认设置(例如优化的默认 Android Virtual Device (AVD) 模拟和更新的系统映像)。本文件介绍了您可能想要使用的其他配置设置,以便您自定义对 Android Studio 的使用方式。
Android Studio 通过 Help 菜单提供对两个配置文件的访问:
studio.vmoptions
:自定义 Studio Java 虚拟机 (JVM) 的选项,如堆内存和缓存大小。请注意,对于 Linux 机器,此文件可能命名为studio64.vmoptions
,具体取决于您的 Android Studio 版本。idea.properties
:自定义 Android Studio 的属性,如插件文件夹路径或最大支持文件大小。
有关模拟器和设备设置与使用的特定文档,请参阅管理虚拟设备、使用硬件设备和 OEM USB 驱动程序。
查找配置文件
两个配置文件都存储在 Android Studio 的配置文件夹中。文件夹名称取决于 Studio 版本。例如,Android Studio 2.2 的文件夹名称为 AndroidStudio2.2
。此文件夹的位置取决于您的操作系统:
- Windows:
%USERPROFILE%.<CONFIGURATION_FOLDER>/
- Mac:
~/Library/Preferences/<CONFIGURATION_FOLDER>/
Linux:
~/.<CONFIGURATION_FOLDER>/
您也可以使用以下环境变量指向其他位置的特定替换文件:STUDIO_VM_OPTIONS
:设置.vmoptions
文件的名称和位置STUDIO_PROPERTIES
:设置.properties
文件的名称和位置STUDIO_JDK
:设置运行 Studio 所使用的 JDK
自定义 VM 选项
通过 studio.vmoptions
文件,您可以自定义适用于 Android Studio 的 JVM 的选项。为了提高 Studio 的性能,最常用的调节选项是最大堆内存,但您也可以使用 studio.vmoptions
文件替换其他默认设置,如初始堆内存、缓存大小和 Java 垃圾回收开关。
要新建 studio.vmoptions
文件或打开现有文件,请执行以下步骤:
- 点击 Help > Edit Custom VM Options。如果您之前从未编辑过适用于 Android Studio 的 VM 选项,IDE 将提示您新建一个
文件。点击 Yes 创建文件。
studio.vmoptions - 此时
studio.vmoptions
文件将在 Android Studio 的编辑器窗口中打开。编辑文件以添加您自己的自定义 VM 选项。如需可自定义 JVM 选项的完整列表,请参阅 Oracle 的 Java HotSpot VM 选项页。
您创建的studio.vmoptions
文件将添加至默认studio.vmoptions
文件,后者位于 Android Studio 安装文件夹内的bin/
目录中。
请注意,切勿直接编辑 Android Studio 程序文件夹内的 studio.vmoptions
文件。尽管您可以访问该文件来查看 Studio 的默认 VM 选项,但仅编辑自己的 studio.vmoptions
文件可确保您不会替换 Android Studio 的重要默认设置。因此,在您的 studio.vmoptions
文件中,请仅替换您关注的属性,使 Android Studio 可以继续使用未更改的任何属性的默认值。
最大堆内存
默认情况下,Android Studio 的最大堆内存为 1280MB。如果您要处理大项目,或者您的系统有大量 RAM 可用,您可以通过在 Android Studio 的 VM 选项中增加最大堆内存来提高性能。如果系统的内存有限,您可能希望降低最大堆内存。
要更改最大堆内存,请执行以下步骤:
- 点击 Help > Edit Custom VM Options 以打开您的
studio.vmoptions
文件。 - 向
studio.vmoptions
文件添加一个行,使用语法-XmxheapSize
设置最大堆内存。您选择的大小应该基于项目大小以及机器上的可用 RAM。作为基准,如果您有 4GB 以上的 RAM 和中等大小的项目,则应该将最大堆内存设置为 2GB 或更高。以下行可将最大堆内存设置为 2GB:
- -Xmx2g
- 保存对
studio.vmoptions
文件所做的更改,然后重新启动 Android Studio 以使更改生效。 - 要确认新的最大堆内存,请打开命令行,然后键入以下命令:
- jps -lvm
您将看到机器上正在运行的工具 JVM 的列表,包括每台 JVM 的完整包名称和传入的参数。找到与您的 Android Studio 实例对应的项。该项应该以 -Didea.paths.selector=AndroidStudio[Version]
结尾。对于此 JVM,您应该看到两个以 -Xmx
开头的参数:一个采用默认值 1280mb,另一个采用新值,如图 1 所示。
图 1. 显示 Android Studio JVM 当前参数的终端输出。
-Xmx
参数显示默认最大堆内存,在本例中为 1280m。-Didea.paths.selector
显示目前正在运行的 Android Studio 版本。-Xmx
参数显示新的自定义最大堆内存。请注意,该参数后跟您之前创建的自定义studio.vmoptions
文件的位置。
导出和导入 IDE 设置
您可以导出一个设置 JAR 文件 (Settings.jar
),其中包含项目的所有或部分首选 IDE 设置。然后,您可以将 JAR 文件导入其他项目和/或使 JAR 文件可供您的同事导入至其项目。
如需了解详细信息,请参阅 IntelliJ IDEA 中的导出和导入设置。
自定义 IDE 属性
通过 idea.properties
文件,您可以自定义 Android Studio 的 IDE 属性,如用户安装插件的路径以及 IDE 支持的最大文件大小。idea.properties
文件与 IDE 的默认属性合并,以便您可以仅指定替换属性。
要新建 idea.properties
文件或打开现有文件,请执行以下步骤:
- 点击 Help > Edit Custom Properties。如果您之前从未编辑过 IDE 属性,Android Studio 将提示您新建一个
idea.properties
文件。点击 Yes 创建文件。 - 此时
idea.properties
文件将在 Android Studio 的编辑器窗口中打开。编辑文件以添加您自己的自定义 IDE 属性。
以下idea.properties
文件包括通常自定义的 IDE 属性。如需获得属性的完整列表,请参阅 IntelliJ IDEA 的idea.properties
文件。
- #---------------------------------------------------------------------
- # Uncomment this option if you want to customize path to user installed plugins folder. Make sure
- # you're using forward slashes.
- #---------------------------------------------------------------------
- # idea.plugins.path=${idea.config.path}/plugins
- #---------------------------------------------------------------------
- # Maximum file size (kilobytes) IDE should provide code assistance for.
- # The larger file is the slower its editor works and higher overall system memory requirements are
- # if code assistance is enabled. Remove this property or set to very large number if you need
- # code assistance for any files available regardless their size.
- #---------------------------------------------------------------------
- idea.max.intellisense.filesize=2500
- #---------------------------------------------------------------------
- # This option controls console cyclic buffer: keeps the console output size not higher than the
- # specified buffer size (Kb). Older lines are deleted. In order to disable cycle buffer use
- # idea.cycle.buffer.size=disabled
- #---------------------------------------------------------------------
- idea.cycle.buffer.size=1024
- #---------------------------------------------------------------------
- # Configure if a special launcher should be used when running processes from within IDE.
- # Using Launcher enables "soft exit" and "thread dump" features
- #---------------------------------------------------------------------
- idea.no.launcher=false
- #---------------------------------------------------------------------
- # To avoid too long classpath
- #---------------------------------------------------------------------
- idea.dynamic.classpath=false
- #---------------------------------------------------------------------
- # There are two possible values of idea.popup.weight property: "heavy" and "medium".
- # If you have WM configured as "Focus follows mouse with Auto Raise" then you have to
- # set this property to "medium". It prevents problems with popup menus on some
- # configurations.
- #---------------------------------------------------------------------
- idea.popup.weight=heavy
- #---------------------------------------------------------------------
- # Use default anti-aliasing in system, i.e. override value of
- # "Settings|Editor|Appearance|Use anti-aliased font" option. May be useful when using Windows
- # Remote Desktop Connection for instance.
- #---------------------------------------------------------------------
- idea.use.default.antialiasing.in.editor=false
- #---------------------------------------------------------------------
- # Disabling this property may lead to visual glitches like blinking and fail to repaint
- # on certain display adapter cards.
- #---------------------------------------------------------------------
- sun.java2d.noddraw=true
- #---------------------------------------------------------------------
- # Removing this property may lead to editor performance degradation under Windows.
- #---------------------------------------------------------------------
- sun.java2d.d3d=false
- #---------------------------------------------------------------------
- # Workaround for slow scrolling in JDK6
- #---------------------------------------------------------------------
- swing.bufferPerWindow=false
- #---------------------------------------------------------------------
- # Removing this property may lead to editor performance degradation under X Window.
- #---------------------------------------------------------------------
- sun.java2d.pmoffscreen=false
- #---------------------------------------------------------------------
- # Workaround to avoid long hangs while accessing clipboard under Mac OS X.
- #---------------------------------------------------------------------
- # ide.mac.useNativeClipboard=True
- #---------------------------------------------------------------------
- # Maximum size (kilobytes) IDEA will load for showing past file contents -
- # in Show Diff or when calculating Digest Diff
- #---------------------------------------------------------------------
- # idea.max.vcs.loaded.size.kb=20480
针对低内存机器配置 IDE
如果您正在低于建议规格(请参阅系统要求)的机器上运行 Android Studio,则可以按如下方式自定义 IDE 以提高机器性能:
- 减小 Android Studio 可用的最大堆内存:将 Android Studio 的最大堆内存减小至 512Mb。如需了解有关更改最大堆内存的详细信息,请参阅最大堆内存。
- 更新 Gradle 和适用于 Gradle 的 Android 插件:更新至最新版本的 Gradle 和适用于 Gradle 的 Android 插件,确保您能利用最新的性能改进。如需了解有关更新 Gradle 和适用于 Gradle 的 Android 插件的详细信息,请参阅适用于 Gradle 的 Android 插件版本说明。
- 启用节能模式:启用节能模式会关闭一系列消耗大量内存和电池的后台操作,包括错误突出显示和动态检查、自动弹出式代码完成和自动增量式后台编译。要打开节能模式,请点击 File > Power Save Mode。
- 停用不必要的 lint 检查:要更改 Android Studio 在您的代码上运行的 lint 检查,请继续执行以下操作:
- 点击 File > Settings(在 Mac 中,点击 Android Studio > Preferences)以打开 Settings 对话框。
- 在左侧窗格中,展开 Editor 部分并点击 Inspections。
- 点击复选框以选择或取消选择项目适用的 lint 检查。
- 点击 Apply 或 OK 以保存所做的更改。
- 在物理设备上调试:在模拟器上调试使用的内存比在物理设备上调试使用的内存更多,因此您可以通过在物理设备上调试来提高 Android Studio 的总体性能。
- 仅将必要的 Google Play 服务作为依赖项包括在内:将 Google Play 服务作为依赖项包括在项目中可提高必要的内存量。仅包括必要的依赖项以提高内存利用率和性能。如需了解详细信息,请参阅将 Google Play 服务添加到您的项目。
- 打开 Gradle 的离线模式:如果您的带宽有限,请打开离线模式,以防 Gradle 在您构建期间尝试下载丢失的依赖项。离线模式打开时,Gradle 会在丢失任何依赖项时发布构建故障,而不会尝试下载它们。要打开离线模式,请继续执行以下操作:
- 点击 File > Settings(在 Mac 中,点击 Android Studio > Preferences)以打开 Settings 对话框。
- 在左侧窗格中,展开 Build, Execution, Deployment,然后点击 Gradle。
- 在 Global Gradle 设置下,选中 Offline work 复选框。
- 点击 Apply 或 OK 以使更改生效。
- 不要启用并行编译:Android Studio 可以并行编译独立模块,但如果您具有低内存系统,则不应启用此功能。要选中此设置,请继续执行以下操作:
- 点击 File > Settings(在 Mac 中,点击 Android Studio > Preferences)以打开 Settings 对话框。
- 在左侧窗格中,展开 Build, Execution, Deployment,然后点击 Compiler。
- 确保 Compile independent modules in parallel 选项未选中。
- 如果您进行了更改,请点击 Apply 或 OK 以使更改生效。
针对 Instant Run 配置您的项目
Instant Run 是 Run 和 Debug 命令的行为,可以大幅缩短应用更新的间隔时间。尽管首次构建可能需要花费较长的时间,Instant Run 在向应用推送后续更新时则无需构建新的 APK,因此,这样可以更快地看到更改。
默认情况下,Android Studio 会为使用适用于 Gradle 的 Android 插件 2.0.0 及更高版本构建的项目启用 Instant Run。您可以通过修改项目的一些设置提高使用 Instant Run 的构建性能。有关针对 Instant Run 配置项目的详细信息,请参阅针对 Instant Run 配置和优化您的项目。
设置 JDK 版本
最新 OpenJDK 的副本与 Android Studio 2.2 和更高版本捆绑提供,这是我们建议用于 Android 项目的 JDK 版本。要使用捆绑的 JDK,请继续执行以下操作:
- 在 Android Studio 中打开您的项目,然后在菜单栏中选择 File > Project Structure。
- 在 SDK Location 页面中的 JDK location 下方,选中 Use embedded JDK 复选框。
- 点击 OK。
默认情况下,用于编译项目的 Java 语言版本基于项目的compileSdkVersion
(因为不同 Android 版本支持不同版本的 Java)。如有必要,您可以通过将以下CompileOptions {}
代码块添加到build.gradle
文件来替换此默认 Java 版本:
- android {
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_6
- targetCompatibility JavaVersion.VERSION_1_6
- }
- }
如需了解有关在何处定义 compileSdkVersion
的详细信息,请参阅模块级构建文件。
设置代理设置
代理作为 HTTP 客户端和 Web 服务器之间的中间连接点,可提高互联网连接的安全性和隐私性。
要支持在防火墙后面运行 Android Studio,请为 Android Studio IDE 设置代理设置。使用 Android Studio IDE HTTP 代理设置页面设置 Android Studio 的 HTTP 代理。
若从命令行或在未安装 Android Studio 的机器(例如持续性集成服务器)上运行适用于 Gradle 的 Android 插件,则应在 Gradle 构建文件中设置代理设置。
注:在初始安装 Android Studio 程序包后,可以通过互联网访问或脱机运行 Android Studio。但是,Android Studio 设置向导同步、第三方库访问、访问远程存储库、Gradle 初始化和同步以及 Android Studio 版本更新需要互联网连接。
设置 Android Studio 代理
Android Studio 支持 HTTP 代理设置,因此您可以在防火墙后面或使用安全网络运行 Android Studio。要在 Android Studio 中设置 HTTP 代理,请执行以下操作:
- 从菜单栏中点击 File > Settings(在 Mac 中,点击 Android Studio > Preferences)。
- 在左侧窗格中,点击 Appearance & Behavior > System Settings > HTTP Proxy。此时将出现 HTTP Proxy 页面。
- 选择 Auto-detect proxy settings 以使用自动代理配置 URL 来配置代理设置,或选择 Manual proxy configuration 以自行输入每一项设置。有关这些设置的详细说明,请参阅 HTTP 代理。
- 点击 Apply 或 OK 以使更改生效。
适用于 Gradle 的 Android 插件 HTTP 代理设置
若从命令行或在未安装 Android Studio 的机器上运行 Android 插件,则应在 Gradle 构建文件中设置适用于 Gradle 的 Android 插件代理设置。
对于应用程序特定的 HTTP 代理设置,请根据各应用程序模块的要求在 build.gradle
文件中设置代理设置。
- apply plugin: 'com.android.application'
- android {
- ...
- defaultConfig {
- ...
- systemProp.http.proxyHost=proxy.company.com
- systemProp.http.proxyPort=443
- systemProp.http.proxyUser=userid
- systemProp.http.proxyPassword=password
- systemProp.http.auth.ntlm.domain=domain
- }
- ...
- }
对于整个项目的 HTTP 代理设置,请在 gradle/gradle.properties
文件中设置代理设置。
- # Project-wide Gradle settings.
- ...
- systemProp.http.proxyHost=proxy.company.com
- systemProp.http.proxyPort=443
- systemProp.http.proxyUser=username
- systemProp.http.proxyPassword=password
- systemProp.http.auth.ntlm.domain=domain
- systemProp.https.proxyHost=proxy.company.com
- systemProp.https.proxyPort=443
- systemProp.https.proxyUser=username
- systemProp.https.proxyPassword=password
- systemProp.https.auth.ntlm.domain=domain
- ...
有关使用 Gradle 属性进行代理设置的信息,请参阅 Gradle 用户指南。
注:在使用 Android Studio 时,Android Studio IDE HTTP 代理设置页面中的设置将重写 gradle.properties 文件中的 HTTP 代理设置。