我最近从Eclipse升级到Android Studio,但我并不喜欢这种体验。我比较的是Windows 7 64位终极版,16GB内存,英特尔i7 4770运行NVidia Geforce 780,如果重要的话,我运行的是最新的JDK和最新的Android Studio。

Android Studio在构建项目时非常缓慢,我可以接受,但它也非常消耗资源,有时会使PC速度变慢。

每当我在AS中构建或运行任何东西时,我的PC似乎变得极其缓慢。如果我点击“Gradle build running”旋转器,它也会导致屏幕闪烁,偶尔会让我的第二个显示器空白,我觉得这很奇怪。内存的使用也飙升到3GB,我发现什么都不做就过度了(这是在几次构建后空闲的时候)。

此外,AS底部的面板一直在跳来跳去,这是一种糟糕的用户体验(从Android移动到消息到版本控制或其他任何临时的基础上,这取决于正在发生的事情,这是非常非常恼人的)。

我想知道的基本上是:

1)如何让Android Studio运行得更好?我可能做错了什么,或者错过了一些我不知道的更新,我相信其他人也注意到了这些行为,并找到了一些解决方案。

2)我如何“钉”底部面板,使他们不跳,而是让我,用户,导航到他们当我希望而不是自动切换他们?

非常感谢,如果这不是这些问题的正确位置,我再次道歉。

编辑1 更多评论:

我使用的是今天最新的稳定版本。这个版本是Android Studio 1.2.2 build # AI-141.1980579,于2015年6月3日发布 这种行为发生在使用Java 7或Java 8时。它似乎与Java版本无关。 我没有使用演示模式。只是普通的观点。 对构建配置进行更改(感谢@Blackbelt和他的回答)似乎对构建有所帮助,但迟缓和一般用户体验等其他问题仍然存在。


当前回答

我遵循了这个帖子,它对我很有效。

编辑:

以下技巧已经在上面的帖子中提到。

在它。属性,这样写:

org.gradle.daemon=true
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
org.gradle.configureondemand=true

在构建中。gradle,把这个(注意这将禁用lint检查):

tasks.whenTaskAdded { task ->
    if (task.name.equals("lint")) {
        task.enabled = false
    }
}

其他回答

在情况设置-Xmx4096m -XX:MaxHeapSize=256m(等。在上面提到的答案)做的工作,然后手动做这个:

步骤1:启动Android studio并关闭任何打开的项目(文件>关闭项目)。

步骤2:进入“Welcome”界面,进入“Configure > Settings”。

步骤3:选择构建、执行、部署>编译器

步骤4:将“Build process heap size (Mbytes)”修改为1024,“Additional Build process to VM Options”修改为-Xmx512m。

第五步:关闭或重启Android Studio。

总结一下

1)在AndroidStudio的设置> compile启用名为compile独立模块并行的复选框。

2)在帮助>编辑自定义虚拟机选项我有:

-Xms1024m 
-Xmx4096m # <------ increase this to most of your RAM 
-XX:MaxPermSize=1024m 
-XX:ReservedCodeCacheSize=440m 
-XX:+UseCompressedOops 
-XX:-HeapDumpOnOutOfMemoryError 
-Dfile.encoding=UTF-8

附注:有些人说注意,而不是虚拟机选项,它是更好的组合可以通过组合成一行命令在gradle覆盖这些行。属性,像这样:

org.gradle。jvmargs=-Xms1024m -Xmx4096m…

3)我有一个老的双核4GB内存,运行ubuntu。Qs命令行选项我只有——offline(它指定构建应该在不访问网络资源的情况下运行)。我还启用了其余的复选框,现在它运行正常:

自动制作项目 使用进程内构建按需配置 检查AndroidStudio的设置,在compile下的复选框“并行编译独立模块”已启用。

在Vmoptions下,我有

-Xmx2048m -XX:MaxPermSize=1024

我有一个老的双核4GB内存,运行ubuntu。Qs命令行选项我只有——offline,它指定构建应该在不访问网络资源的情况下运行。我还启用了其余的复选框:

自动制作项目 使用过程中构建 按需配置 运行正常

Edit

可以通过工作室提供额外的选项。vmoptions位于(只需将X.X替换为version):

Windows:转到%USERPROFILE%\. androidstudix . x \studio.exe。Vmoptions(或studio64.exe.vmoptions) 麦克:~ /图书馆/ / .AndroidStudioX.X / studio.vmoptions偏好 Linux: ~ / .AndroidStudioX.X /工作室。Vmoptions(和/或studio64.vmoptions)

增加-Xmx的值应该会有很大帮助。如

-Xms1024m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=256m
-XX:+UseCompressedOops

将分配4G作为最大堆,初始值为1G

编辑:

在windows上,默认值存储在C:\Program Files\Android\Android Studio\bin\*.vmoptions中。IDE允许您通过Help->编辑自定义虚拟机选项来调整这些值(感谢@Code-Read指出这一点)。

编辑2:

Android studio 3.5更容易更改这些值。请访问:

Preferences > Appearance & Behavior > System Settings > Memory Settings

这可能听起来很愚蠢,也离题了,但在我的情况下,我用的是外接4k显示器和我的MacBook Pro 13' (MacOS High Sierra, 2016),我把分辨率设置成错误的比例分辨率。切换到另一个没有“使用缩放分辨率可能会影响性能”警告的缩放分辨率解决了我的整体性能问题。在我的例子中,我必须将分辨率提高到最大。

所以对我来说,这是Android Studio最先出现的整体性能问题,而不是Android Studio特有的问题。

编辑25.11.2017

因此,我不得不在Android Studio中增大字体大小:

在我的Mac上。我遵循了下面的一些建议。

我注意到AS从HDD传输了太多的数据。这是非常烦人的,尤其是在开始写一行新代码的时候。所以,我认为更好的办法是用SSD重新安装硬盘。我的i5有6gb内存,即使在构建时,CPU的负载也很少超过50%。所以,最薄弱的地方是HDD。

我遵循了这个帖子,它对我很有效。

编辑:

以下技巧已经在上面的帖子中提到。

在它。属性,这样写:

org.gradle.daemon=true
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
org.gradle.configureondemand=true

在构建中。gradle,把这个(注意这将禁用lint检查):

tasks.whenTaskAdded { task ->
    if (task.name.equals("lint")) {
        task.enabled = false
    }
}