Android Studio - 我们如何让应用程序编译得更快? [复制]

Posted

技术标签:

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

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

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

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

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

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

谢谢。

【问题讨论】:

你有多少内存? Android Studio(和 Gradle)已经足够聪明,不会编译未修改的类。 我有 12 GB 的内存 |酷睿 i5 2.0 千兆赫处理器 看到这个***.com/a/36826562/1770868 【参考方案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 会有所帮助。

以上是关于Android Studio - 我们如何让应用程序编译得更快? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio创建AIDL文件并实现进程间通讯

如何发布 Android .aar 源码让 Android Studio 自动找到它们?

如何使用 Gradle 构建系统让 PhoneGap 项目在 Android Studio 中运行

Android开发 Android Studio2.0 教程从入门到精通Windows版 - 入门篇

协程主体未涵盖在单元测试代码覆盖范围内 - Android Studio

如何在 Android Studio 中创建项目以运行默认 SMS 应用程序