【问题标题】:Android Studio - How can we make an app compile faster? [duplicate]Android Studio - 我们如何让应用程序编译得更快? [复制]
【发布时间】:2014-11-25 12:13:31
【问题描述】:

我正在使用 android studio 构建一个 android 应用。

在此过程中,我还实现了 facebook 登录,这需要我将一个文件夹的代码放入我的项目以及其他编译时库中。

每次我在测试时编译(和运行)我的应用程序,目前编译需要 3 分钟!

我想知道是否有办法指定未修改的类不需要重新编译?我正在努力加快构建时间,以便提高工作效率。

关于如何使我的项目更快地构建以进行测试/调试/发布的任何其他建议?

谢谢。

【问题讨论】:

  • 你有多少内存?
  • Android Studio(和 Gradle)已经足够聪明,不会编译未修改的类。
  • 我有 12 GB 的内存 |酷睿 i5 2.0 千兆赫处理器

标签: android android-studio


【解决方案1】:

gradle.properties中,添加以下两行:

org.gradle.daemon=true
org.gradle.parallel=true

【讨论】:

  • 确实有帮助,现在构建时间减少到 1:20 秒,但过去是 3-6 秒。所以这是一个很好的提示
  • @user198923 "过去是 3-6 秒" 从那以后你有什么改变?
  • 不多...只是标准代码更改,没有新库或任何东西
  • 它运作良好。谢谢
【解决方案2】:

您可以为 Gradle 启用“离线工作”。 在 Android Studio 中打开首选项对话框。接下来在类别(左侧)中选择 Gradle 并激活“离线工作”复选框。

在我的项目中,这加快了编译速度,因为编译时不会重新检查依赖项(我猜)。因此,一旦您的应用程序的所有依赖项都已加载和编译,您就可以开始离线工作了。如果您更改依赖项或依赖项的版本,请记住启用“在线工作”。

【讨论】:

    【解决方案3】:

    您可以随时增加可用的堆空间。您投入的内存越多,编译时间就越好。

    这里有一个有用的post,告诉你如何去做。

    【讨论】:

    • 这实际上可能会使问题变得更糟。
    • 你为什么这么说? Studios 使用的更多可用 RAM 总是对我有帮助。也就是说,我确实有 32gb,所以我可以在上面倾倒很多额外的东西
    • 构建不会发生在 Android Studio 的进程空间中,所以如果你给 Android Studio 更多的 RAM,实际构建的剩余空间会更少。 Gradle 的守护进程默认占用数百兆字节(有些配置为 1 GB),但大部分构建发生在 Gradle 分叉的子进程中。
    • 在 Eclipse 中,我确信这个过程会变得更快。我知道由于个人经验,“编译”时间大大减少了。此外,如果他正在启动 AVD,那么毫无疑问更多的 ram 会有所帮助。
    猜你喜欢
    • 2017-03-19
    • 2018-08-23
    • 2014-06-15
    • 2019-05-12
    • 2020-06-17
    • 2021-05-11
    • 1970-01-01
    • 1970-01-01
    • 2014-12-10
    相关资源
    最近更新 更多