我的Android Studio项目过去构建得更快,但现在需要很长时间来构建。知道是什么导致了延误吗? 我试过https://stackoverflow.com/a/27171878/391401但没有效果。我没有运行任何可能中断构建的反病毒程序。我的应用程序也没有那么大(大约5MB),它曾经在几秒钟内构建,但不确定发生了什么变化。

10:03:51 Gradle build finished in 4 min 0 sec  
10:04:03 Session 'app': running  
10:10:11 Gradle build finished in 3 min 29 sec  
10:10:12 Session 'app': running  
10:20:24 Gradle build finished in 3 min 42 sec  
10:28:18 Gradle build finished in 3 min 40 sec  
10:28:19 Session 'app': running  
10:31:14 Gradle build finished in 2 min 56 sec   
10:31:14 Session 'app': running  
10:38:37 Gradle build finished in 3 min 30 sec  
10:42:17 Gradle build finished in 3 min 40 sec  
10:45:18 Gradle build finished in 3 min 1 sec  
10:48:49 Gradle build finished in 3 min 30 sec  
10:53:05 Gradle build finished in 3 min 22 sec  
10:57:10 Gradle build finished in 3 min 19 sec  
10:57:11 Session 'app': running  

当前回答

找到了一个简单和最好的方法来构建gradle

去你的应用>>打开gradle。属性,并更改一些行从它[remove #]

否则你可以复制粘贴我下面的片段以及

    # Project-wide Gradle settings.

# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# any settings specified in this file.

# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html

# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx2048m -XX:MaxPermSize=512m
 org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
 org.gradle.parallel=true

以前对我来说很有效,大约需要2-3分钟,现在只需要5-6秒

在上面的场景中,我的mac机器有8GB内存,所以我为gradle分配了4gb内存

其他回答

在Android studio 2.0的测试版中,他们推出了一项名为“即时运行”的功能。它在很大程度上减少了构建时间。其核心理念是,Android Studio只会将一些小变化推送到已经运行的应用中。

它将我们在代码中所做的更改分为三部分:热插拔、热插拔和冷插拔,这是基于这些更改会给构建带来多大的负载。在那之后,它只是在已经运行的应用程序中交换代码,我们可以看到变化正在运行几秒钟。去看医生了解更多信息。

在这里你可以下载Android Studio 2.0预览版。

PS:这个功能有一些问题。医生都列出来了。安装前检查一下。

我很长一段时间都面临着同样的问题,但我通过调整gradle中的设置解决了它。

步骤1:在Module app中添加BuildScript中的依赖项

buildscript {
 dependencies {
         classpath 'com.android.tools.build:gradle:2.0.0-alpha9'
}
}

步骤2:添加dexOption并给出以下heapSize

  dexOptions {
    incremental = true;
    preDexLibraries = false
    javaMaxHeapSize "4g"
}

第三步:添加产品口味

    productFlavors {
    dev {
        minSdkVersion 23
        applicationId = "com.Reading.home"
    }
    prod {
        minSdkVersion 15
        applicationId = "com.Reading.home" // you don't need it, but can be useful

    }
}

这将减少您的构建时间。

我的电脑也有类似的问题。 Windows Defender阻塞了Gradle Building的某些部分。 我已经禁用了它,在那之后工作得很好。

按照这些步骤将使其速度提高10倍,并将构建时间减少90%

首先创建一个名为gradle的文件。属性:

/home/<username>/.gradle/ (Linux)
/Users/<username>/.gradle/ (Mac)
C:\Users\<username>\.gradle (Windows)

将这一行添加到文件中:

org.gradle.daemon=true

org.gradle.parallel=true

更新2022;谷歌删除了“离线工作”选项;

他们增加了“下载依赖关系的外部注释”选项,但当然取消勾选该选项并不能提供同样的速度提升。

回答

在Android Studio转到 文件->设置->构建,执行,部署->构建工具-> Gradle

(如果在mac上)Android Studio ->首选项…->构建,执行,部署->构建工具-> Gradle

检查“Global Gradle settings”下的“Offline work”

注意:在更新版本的Android studio中,View->Tool Windows->Gradle->在线/离线切换按钮

它将减少90% gradle构建时间。

如果你刚刚在gradle中添加了一个新的依赖项,你将不得不取消离线工作,否则gradle将无法解析依赖项。在完成解决后,您可以检查离线工作,以便更快地构建