我最近从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和他的回答)似乎对构建有所帮助,但迟缓和一般用户体验等其他问题仍然存在。


当前回答

杀毒软件导致了慢速

In one particular system I looked at, this issue was caused by an over-zealous anti-virus that was interfering with Gradle, the build manager for Android Studio. It seems every time Gradle was "touching" a .jar file, the virus checker was unzipping the .jar and scanning it for viruses first. The Gradle build could only continue once the unzipping and scan was complete, thus leading to very long build times (5 min plus). Since Android Studio, by default, runs a Gradle build when you start up, it manifests as an extremely slow start-up.

这个问题非常容易检查:

当您遇到Android Studio运行缓慢的症状时,请按Ctrl- Alt-Delete并打开Windows任务管理器。 单击Processes选项卡查看活动进程并按CPU排序。如果你看到杀毒软件间歇地占用大量CPU,而Android Studio似乎正在加载,这很可能是同样的问题。 您可以通过查看反病毒软件的扫描日志来进一步验证,检查.jar文件。

要解决这个问题,您必须将正确的目录添加到防病毒软件的“排除文件夹”中。假设你的Windows用户名是“username”,并且你已经在C: drive上安装了Android Studio。然后,您将请求从病毒检查中排除以下目录:

C:\Users\Username\.android
C:\Users\Username\.AndroidStudio2.2
C:\Users\Username\.gradle
C:\Users\Username\.m2
C:\Users\Username\AppData\Local\Android\Sdk

请注意,如果你排除这些目录,你可能需要采取额外的安全预防措施,你应该在工作场所与你的安全部门合作。这可能涉及到在必要时设置自己的Maven存储库。

(我知道这是一个晚的答案,但之前的答案都没有解决这个潜在的问题)

其他回答

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

这个答案涉及到在你已经把Xmx和Xms内存设置弄清楚之后,Windows 10的Gradle构建速度变慢的问题。

视窗防护

就Windows Defender而言,仅仅通过“文件”或“文件夹”将文件夹/文件添加到Windows Defender排除列表是不够的。

你必须添加属于Android Studio / Gradle / Java(嵌入式JDK或Oracle JDK)的目录作为“进程”排除到Windows Defender:

看一下大卫·罗森的答案 在Gradle构建过程中…监视Windows任务管理器的进程 在Windows Defender中,为包含文件/可执行文件的目录添加“进程”排除,你看到在与Android Studio / Gradle相关的构建过程中使用CPU

这显然会带来安全隐患。

以下描述了有关在Windows Defender中使用“进程”排除(而不是添加简单的“文件”或“文件夹”排除)的更多细节:

A file name with full path causes the particular binary file to be excluded, i.e. any files it touches, regardless of where the file is located, will not be scanned by Windows Defender. A file name without any path causes any binary file with this file name to be excluded regardless of its location. A path followed by a "*" (e.g. c:\my\private\tools*) causes any binaries under this path to be excluded. Any files touched by these processes will be excluded. This is different from a path exclusion, where files touched by any process under the excluded path is excluded.

这里的关键字是....将这些排除作为“进程”类型的排除考虑到“二进制接触的文件”,而不是手动查找并排除由Android Studio / Gradle生成的每个文件/文件夹。

Windows文件索引

Windows文件索引似乎也会降低Gradle构建的速度。关闭Gradle / Android Studio使用的目录的Windows文件索引。

以下是我排除的“Windows文件索引”和“Windows防御程序”:

 C:\Program Files\Android\*
 C:\Users\<yourUserAcct>\.android\*
 C:\Users\<yourUserAcct>\.AndroidStudio3.0\*
 C:\Users\<yourUserAcct>\.gradle\*
 C:<pathToYourAndroidStudioProjectFolder>

单击帮助>编辑自定义属性并添加这一行:

sun.java2d.noddraw=false

... 为我成功地解决了速度问题(Windows 10 64位)。就我而言,这是绝对的巫毒(我没有做过任何研究为什么它应该工作),在这个属性上面有一个警告,它可能会导致闪烁和无法在某些显卡上重新绘制,但你还是去吧。(受LairdPleng的评论启发,进一步信息)

不要编辑工作室。vmoptions,可能不起作用。

在它。属性文件(在应用程序目录)添加这个:

org.gradle.parallel=true
org.gradle.jvmargs=-Xmx7g -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

这里让我感到痛苦的不是编译,而是输入。我可以禁用所有智能功能,回到notepad++,就像TomTsagk在评论中建议的那样。今天我需要更多的核心和内存。

作为魔鬼的拥护者,我认为打字不应该需要16Gb的八进制PC。喜欢Sajan Rana的建议,但这里的事情太缓慢了,感觉像是安慰剂。

为了公平起见,我使用的是1.4RC1,它离稳定分支还差得远。关闭互联网有一点帮助。同时使用XML布局的设计(预览)和文本视图的新特性非常有用。

不,这太荒谬了。永远不要离开稳定的航道。