为什么Android Studio重build项目的速度太慢,即使源代码没有变化?

当我在源代码中进行一些更改时,Android Studio(实际上是gradle)必须重build项目。 很明显。

为什么第二个构build和第一个构build需要几乎相同的时间,即使我没有对项目进行任何更改? 当我查看GradleConsole时,它等待“assembleDubug”任务。 我认为gradle应该意识到没有变化,不应该浪费太多时间。

Solutions Collecting From Web of "为什么Android Studio重build项目的速度太慢,即使源代码没有变化?"

最后,我find了解决scheme:打开Gradle的离线工作

在这里输入图像说明

或使用CLI: ./gradlew --offline assembleDebugOrWhatever

gradle控制台是否会说:app:assemeble UP-TO-DATE ?

如果您查看运行configuration,您可能会注意到在Before Launch: Gradle-aware Make

这只是告诉它在运行之前重新编译(如果有必要),但是将检测委托给Gradle。 如果Gradle检测到需要,它实际上只会重新编译,但是assemble任务仍然必须尝试运行来检测UP-TO-DATEness。 所以它说它正在运行它,但它实际上并没有做任何事情。 当我连续运行两次时,第一次需要一段时间才能完成所有工作,但是第二次只是在任务列表中快速运行(有一堆最新的date),并部署到电话/模拟器。

这本身不是问题。 与Android Studio无关,因为Gradle只是一个可帮助您构build项目的Android插件。 您需要充分了解gradle是如何知道Android Studio何时运行您的应用程序才会使用它的。 看看gradle和android开发者网站上的这篇文章吧。 最后,从我个人的经验来看,当涉及到Android Studio和Eclipse的Android开发时,你需要有点耐心。 希望这有助于某种方式。

为了避免重build每一次,我要去我的模块项目设置 – >依赖项和上下我的库项目之一 – >应用 – >确定 – >使再生R.java。 您也可以尝试在编译器设置中取消选中“ 使用外部构build ”:

文件 – >设置(Ctrl + Alt + S) – >编译器 – >取消选中“使用外部构build”