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


当前回答

我想分享一下我的案例:

如果你需要play-store库,不要编译所有的库,只编译你需要的库。例如:如果你只需要地图库,而不是编译'com.google.android.gms:play-services:9.0.2',那么在你的gradle上编译'com.google.android.gms:play-services-maps:9.0.2' 不使用OpenJDK的java,我使用java 7甲骨文,它工作得很好。如果你需要更改默认的Java,在Linux终端上执行sudo update-alternatives——config Java并选择数字

我使用的是ubuntu 32位4GB内存。这就是我在阿斯伯格综合症中遇到的所有问题。

其他回答

增加内存对我有帮助:

单击“帮助” 编辑自定义虚拟机选项

Android Studio 2.1.2编辑自定义虚拟机选项

变化值

像下图:

-Xms512m    
-Xmx2560m   
-XX:MaxPermSize=700m    
-XX:ReservedCodeCacheSize=480m    
-XX:+UseCompressedOops

重启Android Studio

在情况设置-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。

我想分享一下我的案例:

如果你需要play-store库,不要编译所有的库,只编译你需要的库。例如:如果你只需要地图库,而不是编译'com.google.android.gms:play-services:9.0.2',那么在你的gradle上编译'com.google.android.gms:play-services-maps:9.0.2' 不使用OpenJDK的java,我使用java 7甲骨文,它工作得很好。如果你需要更改默认的Java,在Linux终端上执行sudo update-alternatives——config Java并选择数字

我使用的是ubuntu 32位4GB内存。这就是我在阿斯伯格综合症中遇到的所有问题。

总结一下

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

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

sun.java2d.noddraw=false

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