我安装了Android Studio 1.0 RC 2,我的电脑内存有4GB,但是在启动Android Studio并运行Android模拟器后,只这两个程序就占用了超过90%的物理内存。有没有办法减少内存使用?由于这个内存问题,我无法同时打开其他应用程序。
我安装了Android Studio 1.0 RC 2,我的电脑内存有4GB,但是在启动Android Studio并运行Android模拟器后,只这两个程序就占用了超过90%的物理内存。有没有办法减少内存使用?由于这个内存问题,我无法同时打开其他应用程序。
我目前在一台装有6GB RAM的Windows 8.1机器上运行Android Studio。
我发现禁用Android Studio中的版本控制系统(VCS),并使用外部程序来处理VCS可以显著提高性能。您可以通过转到文件->设置->插件并禁用以下内容来禁用VCS:
在我的情况下,内存占用有两个主要来源:IDE和Gradle:
IDE的JVM已经配置了最大堆大小。您可以在主界面右下角看到此设置:
您可以通过编辑相关的内存设置在.vmoptions
文件中减少这一点。例如,我将我的最大堆大小更改为512MB:
-Xmx512m
不幸的是,我发现降低这个值会导致Android Studio暂时冻结的频率增加,可能是因为进行垃圾回收。
开发一段时间后,Gradle也可能使用大量RAM。Windows将其显示为Java(TM) Platform SE Binary
:
您可以通过更改Gradle JVM选项来修复此问题。您可以通过编辑gradle.properties
文件以每个用户为基础进行操作:
gradle.properties
文件(如果不存在则创建):
%USERPROFILE%\.gradle\gradle.properties
~/.gradle/gradle.properties
更新org.gradle.jvmargs
属性,如有必要,请创建它。 我将我的设置为以下内容:
org.gradle.jvmargs=-Xmx256m -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
我将最大堆大小设置为256MB(-Xmx256m
),对于我的小项目构建性能没有任何区别。.vmoptions
文件中,它说:“请勿直接修改此文件。如果您想要添加某个值,请将其添加到您的用户特定配置文件中。请参见http://tools.android.com/tech-docs/configuration”。然而,由于我的系统上似乎没有用户特定文件,并且该网站也没有解释任何其他此类文件的位置,因此我将采用此解决方案。
哦,还有:MaxPermSize将在某个时候被弃用。每次在终端启动IDE时都会警告我。 - Zelphir Kaltstahl%USERPROFILE%
下,这是特定于用户的。我不太擅长Linux,但Mac和Linux的说明也说文件在~
下,我猜这是用户的主目录?如果文件不存在,也许你可以创建它;上面提到的文档说:相反,您可以通过在以下目录中创建自己的.properties或.vmoptions文件来自定义属性。
。如果它起作用了,你能告诉我一声吗?这样我就可以更新答案了。 - Sam~/.gradle/gradle.properties
文件以“用户范围”方式解决了该问题。 - Andrea Lazzarotto您可以加速 Eclipse 或 Android Studio 的工作,只需按照以下步骤:
我也使用了 4GB 安装主内存的 Android Studio,但遵循这些步骤真的可以提高我的 Android Studio 性能。
Android Studio最近发布了面向低内存机器的官方指南:指南
如果你的机器配置低于推荐要求(参见系统要求),你可以按照以下方式自定义IDE以提高其在你的机器上的性能:
减少可用于Android Studio的最大堆大小:将Android Studio的最大堆大小降低到512Mb。
升级Gradle和Gradle Android插件:升级到最新版本的Gradle和Gradle Android插件,以确保你能够充分利用最新的性能改进。
启用省电模式:启用省电模式可以关闭许多内存和电池密集型的后台操作,包括错误高亮、即时检查、自动代码完成和自动增量后台编译等。要启用省电模式,请单击 文件 > 省电模式。
禁用不必要的lint检查:要更改Android Studio在你的代码上运行哪些lint检查,请按照以下步骤进行: 单击 文件 > 设置(在Mac上为 Android Studio > 首选项)以打开设置对话框。在左侧窗格中,展开“编辑器”部分,然后单击“检查”。单击复选框以选择或取消选择适用于你的项目的lint检查。单击“应用”或“确定”以保存更改。
在物理设备上调试:在模拟器上进行调试比在物理设备上进行调试使用更多内存,因此你可以通过在物理设备上进行调试来提高Android Studio的整体性能。
仅包含必要的Google Play服务作为依赖项:将Google Play服务作为项目的依赖项包含在内会增加所需的内存量。只包含必要的依赖项以改善内存使用和性能。有关更多信息,请参见将Google Play服务添加到你的项目中。
减少DEX文件编译的最大堆大小:将DEX文件编译的javaMaxHeapSize设置为200m。有关更多信息,请参见通过配置DEX资源提高构建时间。
不要启用并行编译:Android Studio可以并行编译独立模块,但如果您的系统内存较低,则不应该开启此功能。要检查此设置,请按如下操作进行: 单击File > Settings(在Mac上,是Android Studio > Preferences)打开设置对话框。在左侧窗格中,展开Build, Execution, Deployment,然后单击Compiler。确保未选中Compile independent modules in parallel选项。如果您已经做出了更改,请单击Apply或OK以使更改生效。
为Gradle开启离线模式:如果您的带宽有限,请开启离线模式,以防止Gradle在构建过程中尝试下载缺失的依赖项。当离线模式开启时,Gradle会发出构建失败信息,如果您缺少任何依赖项,而不是尝试下载它们。要开启离线模式,请按如下操作进行:
单击 File > Settings(在Mac上,是Android Studio > Preferences)打开设置对话框。
在左侧窗格中,展开Build, Execution, Deployment,然后单击Gradle。
在全局Gradle设置下,选中离线工作复选框。
单击Apply或OK以使更改生效。
我使用了Sam上面提到的所有建议,但我发现VM命令行选项不再按描述支持。(当我使用时会收到错误)
作为替代方案,我能够通过在“gradle.properties”文件中添加以下行来大大减少Gradle的大小。
org.gradle.jvmargs=-Xms512m -Xmx1024m
自A.S. ver 1.3起,该文件位于与"gradle.build"相同的文件夹级别中。
以上配置为512兆的"内存堆栈"和1024兆的"内存堆"。
我在一个小项目上进行了测试,使用设置将两个内存大小都设置为256兆。这如预期地限制了JVM大小。在所有测试中,我都重新启动了A.S.以强制重启JVM。
希望这能让其他人避免得到那些"买一台更好的电脑"的回复。 :-)
在低配置机器上运行Android环境。
帮助 > 编辑自定义VM选项
studio.vmoptions
-Xmx512m
布局性能将被提升
以下提示可能会影响代码质量,请谨慎使用:
Studio包含电源安全模式,打开后会关闭后台操作,如lint、代码完成等。
您可以在需要时手动运行lint检查./gradlew lint
大多数人都在使用Android模拟器,平均消耗2 GB RAM,因此如果可能,请使用实际的Android设备,这将减轻计算机的资源负载。或者,您可以减少模拟器的RAM,这将自动减少计算机上的虚拟内存消耗。您可以在虚拟设备配置和高级设置中找到此选项。
Gradle离线模式是为带宽有限的用户设计的功能,可以禁用构建依赖项的下载。它将减少后台操作,从而有助于提高Android Studio的性能。
Android Studio提供了一种优化方法,可以并行编译多个模块。在低RAM机器上,此功能可能会对性能产生负面影响。您可以在编译器设置对话框中禁用它。
我有Android Studio 2.1.1。我的朋友使用genymotion模拟器,如果使用Android Marshmallow操作系统,它会更快。而我的电脑内存是4GB。为了在Android Studio中使用genymotion,您需要安装插件。如果您不想浪费时间启动Android模拟器(需要5分钟),您可以试试genymotion,它只需要10到20秒就能运行,速度更快。因此,我建议您使用genymotion。