加速 Android Studio 构建

Speed-up Android Studio Builds

也许是一个已知问题,但正在寻找加速 Android Studio 构建的方法。我的大约是 20-25 秒,并不可怕,但在尝试测试增量更改时有点麻烦。

显然,获得更快的 CPU 会有所帮助,但如果有的话,请向 Android Studio 寻求软件级别的调整/提示。

谢谢。

我能够将构建时间减少到 3-5 秒。

  • 正在为 Android Studio 和 Gradle
  • 分配更多内存
  • 将编译配置为 运行 并行
  • 按需编译

RAM 设置在我看来是绝对必须的 - 在给它 2GB(我有 24GB 有足够的空闲空间)后,UI 速度很快,而且代码编辑非常快,完全没有延迟。

这是我使用的完整指令列表:

Android 工作室 RAM 设置: https://extremegtx.wordpress.com/2015/01/08/android-studio-speed-up-studio-and-gradle/

说明适用于 Windows,如果您使用 MAC,请改用以下路径: ~/Library/Preferences/{FOLDER_NAME}/studio.vmoptions

Gradle 设置: http://jimulabs.com/2014/10/speeding-gradle-builds/

作为参考,我正在 运行 正在超频 Xeon X5650 @ 3.85GHz 并编译一个包含大量库和依赖项的相当大的项目。

使用android studio 是一段非常痛苦的经历,我注意到的东西很少,希望他们能提供帮助。

  1. 运行 android 工作室和模拟器同时让你无处可去 特别是如果你有一个缓慢的 CPU 和更少的 RAM。

    我该怎么做?

    • 在 PC 上进行开发(我使用的是 Win10),构建一个签名的 APK,将其复制到我的设备并测试编译后的版本。每当我进行更改时,我都必须重复构建过程! 对我来说比直接通过模拟器调试要快。

    • 禁用 PC 上的大多数服务对我来说效果很好。打开 - 运行 -type 'msconfig' - 加载基本设备和服务。然后重新启动电脑。启动 android 工作室,看看是否有任何变化。

    • 在这两种情况下,我都尽量避免使用模拟器

    • 对于数据库测试,您可以使用带有测试数据的单独机器或打开 'services.msc' 并启用您的数据库和 Web 服务器 + 网络访问。

我们可以添加到 gradle.properties 文件的命令很少:

org.gradle.configureondemand=true - 此命令将告诉 gradle 只构建它真正需要构建的项目。

使用守护进程 — org.gradle.daemon=true

  • 即使在构建完成后,守护进程也会在后台保持 gradle 和 运行ning 的实例。这将消除初始化 gradle 所需的时间并显着减少构建时间。

org.gradle.parallel=真 -

允许gradle并行构建您的项目。如果您的项目中有多个模块,那么通过启用它,gradle 可以 运行 并行构建独立模块的操作。

增加堆大小 — org.gradle.jvmargs=-Xmx3072m -XX:MaxPermSize=512m

-XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 - 由于 android studio 2.0,gradle 在过程中使用 dex 来减少项目的构建时间。通常,在构建应用程序时,多个 dx 进程 运行 在不同的 VM 实例上。但是从 Android Studio 2.0 开始,所有这些 dx 进程 运行s 在单个 VM 中并且该 VM 也与 gradle 共享。这显着减少了构建时间,因为所有 dex 进程都在同一 VM 实例上 运行s。但这需要更大的内存来容纳所有的dex进程和gradle。这意味着您需要增加 gradle 守护程序所需的堆大小。默认情况下,守护程序的堆大小约为 1GB。

确保不使用动态依赖。即不要使用

实施'com.android.support:appcompat-v7:27.0.+'。 此命令意味着 gradle 每次构建应用程序时都会上线并检查最新版本。 而是使用固定版本,即 'com.android.support:appcompat-v7:27.0.2'