How to speed up Android Studio compilation process

Check out Android Studio 2.0 PREVIEW! Much faster!

Supports Instant Run, provide faster emulators and is based on IntelliJ IDEA 15.

http://android-developers.blogspot.nl/2015/11/android-studio-20-preview.html


There are two main tasks to configure your build to reduce the build time.

First, you have to configure your compilation with special flags to make it faster. Edit your gradle.properties or local.properties files as follow:

org.gradle.daemon=true
org.gradle.jvmargs=-Xmx3072m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
org.gradle.configureondemand=true
android.enableBuildCache=true

Explanation:

  • At least 3gb of memory are required by the new option included in Android Studio 2.2 dexing-in-process. If your computer doesn't have enough memory you can adjust this attribute to something more appropriate for your setup.
  • Build Cache is a new feature introduced in Android Studio 2.2 that improve a lot the builds. More info here http://tools.android.com/tech-docs/build-cache . In Android Studio 2.3 or superior is true by default

With this configuration, build time is often reduced from 2-3 minutes to 30 seconds or less. The most important part is the configureondemand attribute. More info here to configure Android Studio parameters

First, one is compiling your project with a minSDKVersion >= 21*. If your app has lower min SDK version you can create a special productFlavour for development purposes as follow:

productFlavors {

    production {
        minSdkVersion 15
        ...
    }

    development {
        minSdkVersion 21
        ...
    }
}

*Important, with Android Studio 2.4 this is not needed anymore because the IDE make this automatically.