我有一个多项目(大约10个模块),每次建造大约需要20-30秒。当我在Android Studio中按下Run键时,我每次都要等待重新构建应用程序,这非常缓慢。

是否有可能在Android Studio中自动化构建过程?或者你有什么建议可以加快这个过程吗?

在Eclipse中,由于自动构建,在模拟器上运行相同的项目大约需要3-5秒。

这是我的身材。Gradle文件(app模块):

buildscript {
    repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android'

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile project(':libraries:SharedLibs')
    compile project(':libraries:actionbarsherlock')
    compile project(':libraries:FacebookSDK')
    compile project(':libraries:GooglePlayServices')
    compile project(':libraries:HorizontalGridView')
    compile project(':libraries:ImageViewTouch')
    compile project(':libraries:SlidingMenu')
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 16
    }
}

当前回答

这是另一个提高性能的技巧:

Android Studio 3.0包含新的DEX编译器D8。

“dex编译器主要工作在日常应用开发的底层,但它直接影响应用的构建时间、.dex文件大小和运行时性能。”

“当将新的D8编译器与当前的DX编译器进行比较时,D8编译速度更快,输出的。dex文件更小,同时具有相同或更好的应用程序运行时性能。”

D8是可选的-使用它,我们必须把它放在项目的gradle.properties

android.enableD8=true

更多信息:https://android-developers.googleblog.com/2017/08/next-generation-dex-compiler-now-in.html

PS.它使我的构建时间提高了大约30%。

其他回答

如果你从命令行使用gradle,你可以让这个过程更快。IDE开发人员有很多优化工作要做。但这只是一个早期版本。

欲了解更多信息,请阅读与一些开发人员在g+上的讨论。

到处寻找,终于找到了一个适合我们的解决方案。启用并行构建(在OSX:首选项->编译器-> gradle ->“并行编译独立模块”)和启用“自动制作项目”将它从~1分钟降低到~20秒。感谢/u/Covalence。

http://www.reddit.com/r/androiddev/comments/1k3nb3/gradle_and_android_studio_way_slower_to_build/

以下是帮助这个刚开始的Android程序员(几年前曾是专业程序员)加速Android Studio 2.2的方法。我知道这是在重复,但是,只是在一个地方总结一下。

初始构建仍然非常缓慢,但现在重新启动运行中的应用程序通常是可以忍受的。我使用的是一台次优PC: AMD四核A8-7410 CPU, 8MB RAM,非ssd HD, Win 10。(这是我第一次在....上发布Stack Overflow;)

在设置-> gradle:

“离线工作”是(这可能是最重要的设置)。

在设置->编译器:

是“并行编译独立模块”(不确定这是否真的有助于利用多核cpu)。

在GRADLE脚本中,“构建。gradle(模块:app)”:

defaultConfig {
    ...
   // keep min high so that restarted apps can be hotswapped...obviously, this is hugely faster.
   minSdkVersion 14
   ...
    // enabling multidex support...does make big difference for me.
    multiDexEnabled true

也在GRADLE脚本,“GRADLE。物业(项目物业)”:

org . gradle。jvmargs=-Xmx3048m -XX: maxpermze =512m -XX:+ heapdumpfdfile -Dfile.encoding=UTF-8

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

此外,在物理设备上而不是模拟器上进行测试对我来说效果很好;可以站立的小平板很方便。

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

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

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

将这一行添加到文件中:

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

在Android Studio中检查这个选项

解决我的问题

文件->设置->构建,执行,部署->构建工具-> Gradle ->离线工作

Gradle的构建从8分钟缩短到3秒。