我安装了 android studio,它崩溃了好几次。我安装了旧版本(Arctic fox),它也是同样的情况。它从来没有安装过 gradle。我通过命令行(使用 apt)安装了 gradle。然后 android studio 抱怨 gradle 库较新。然后崩溃了。我通过命令行安装了最新版本的 android studio。有时它会更进一步,我可以创建一个新项目并给它命名。但我不能做其他任何事情。
我的机器上无法使用硬件加速。
每次我都必须硬重启计算机。
它并不总是在同一阶段崩溃。它开始执行某些操作,例如索引文件,然后崩溃。目前,它会在构建 gradle 时崩溃。我通过移动鼠标指针来测试它。当鼠标指针完全停止移动时,我知道不会发生其他任何事情,然后我按下按钮。
你看,当我打出这些字的时候,另一台电脑就崩溃了。关机。
有没有办法控制它、减慢它的速度、阻止它使用所有 RAM?我不介意给它更多时间来完成它认为必须做的事情,甚至让它运行一整夜,但我希望计算机的其余部分能够保持正常运行。
有没有更简单的替代方案?我应该重新安装 lubuntu 和所有东西,而忽略 android 预览版吗?(无论如何,我现在无法使用它,因为我从未找到谷歌在其 android 教程中提到的“拆分”按钮)。我并不介意重新安装 lubuntu,因为这是一台新机器。除了漂亮的桌面壁纸外,我没有任何个人物品。
欢迎一切建议。
答案1
解决方案 1:降低 Android Studio 的 JVM 的最大内存
如果您的计算机内存不足,您可以告诉 Android Studio 使用更少的内存。
- 打开文件
~/.config/Google/AndroidStudio20*/studio64.vmoptions
- 用较低的值替换(如缺失则添加),
-Xmx*
例如-Xmx4096m
-Xmx2048m
- 设置
-Xms
为相同值 - 节省
- 重启Android Studio
解决方案 2:降低 Gradle 的 JVM 的最大内存
您可以让 Gradle 在构建项目时使用更少的内存。
- 打开或创建文件
~/.gradle/gradle.properties
- 添加或合并行
org.gradle.jvmargs=-Xms1G -Xmx1G
- 添加或合并行
kotlin.daemon.jvmargs=-Xms1G -Xmx1G
gradle.properties
在打开您正在处理的任何 Android 项目中本地删除这些行,以避免它们覆盖上述设置- 终止与 Gradle 相关的所有进程,或者重新启动
解决方案 3:使用 cgroup 进行限制
cgroups 是一种对特定一组进程施加许多资源消耗限制的方法。/sys/fs/cgroup
很复杂,所以我们就使用吧systemd-run
。
- 使用以下命令进入新的内存受限 cgroup 中的子 shell:
systemd-run --user --scope -p MemoryMax=2G bash
~/.local/share/JetBrains/Toolbox/apps/android-studio/bin/studio.sh
使用或 无论安装什么位置启动 Android Studio
解决方案4:减少Android开发资源消耗
在开发 Android 项目时,您还可以使用其他技巧:
- 禁用“文件 > 省电模式”。您说索引文件时会崩溃,因此禁用索引会有所帮助。请注意,这可能会导致许多智能功能停止工作
- 使用命令行。您不需要 IDE 来开发 Android 项目。您只需
./gradlew
在项目文件夹中运行即可构建、打包和安装应用程序。您可以在任何文本编辑器中编辑源文件。
解决方案 5:避免 OOM 导致整台计算机崩溃
当某个程序试图使用过多内存时,整个计算机不应该崩溃。它应该只关闭占用内存最多的程序。
- 安装并正确配置
systemd-oomd
- 如果不可能的话,请禁用交换