From 29bb93cdf753ce3eb5791c641580325926f01900 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Tue, 22 Dec 2020 16:22:19 +0530 Subject: gradle: update property set with AGP 7 experimental flags Signed-off-by: Harsh Shandilya --- gradle.properties | 68 ++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 52 insertions(+), 16 deletions(-) (limited to 'gradle.properties') diff --git a/gradle.properties b/gradle.properties index 670f7d0a..b91f5409 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,11 +1,12 @@ -# Project-wide Gradle settings. - -# IDE (e.g. Android Studio) users: -# Gradle settings configured through the IDE *will override* -# any settings specified in this file. +# 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 +org.gradle.configureondemand=true +org.gradle.caching=true -# For more details on how to configure your build environment visit -# http://www.gradle.org/docs/current/userguide/build_environment.html +# Enable Kotlin incremental compilation +kotlin.incremental=true # Enable AndroidX support android.useAndroidX=true @@ -14,21 +15,56 @@ android.useAndroidX=true # The setting is particularly useful for tweaking memory settings. org.gradle.jvmargs=-Xmx1536m -# 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 +# Turn off AP discovery in compile path to enable compile avoidance +kapt.include.compile.classpath=false -# https://jakewharton.com/increased-accuracy-of-aapt2-keep-rules/ -android.useMinimalKeepRules=true +# Enable AndroidX +android.useAndroidX=true -# Enable rudimentary R class namespacing where each library only contains +# Enable non-transitive R class namespacing where each library only contains # references to the resources it declares instead of declarations plus all # transitive dependency references. -android.namespacedRClass=true +android.nonTransitiveRClass=true + +# Experimental AGP flags +# Generate compile-time only R class for app modules. +android.enableAppCompileTimeRClass=true +# Keep AAPT2 daemons alive between incremental builds. +android.keepWorkerActionServicesBetweenBuilds=true +# Make R fields non-final to improve build speeds. +# http://tools.android.com/tips/non-constant-fields +android.nonFinalResIds=true +# Enable the newly refactored resource shrinker. +android.experimental.enableNewResourceShrinker=true +# Enable precise shrinking in the new resource shrinker. +android.experimental.enableNewResourceShrinker.preciseShrinking=true +# Generate manifest class as a .class directly rather than a Java source file. +android.generateManifestClass=true +# Generate the text map of source sets and absolute paths to allow +# generating relative paths from absolute paths later in the build. +android.experimental.enableSourceSetPathsMap=true +# Use relative paths for better Gradle caching of library build tasks +android.experimental.cacheCompileLibResources=true + +# Default Android build features +# Disable BuildConfig generation by default +android.defaults.buildfeatures.buildconfig=false +# Disable AIDL stub generation by default +android.defaults.buildfeatures.aidl=false +# Disable RenderScript compilation by default +android.defaults.buildfeatures.renderscript=false +# Disable resource values generation by default in libraries +android.defaults.buildfeatures.resvalues=false +# Disable shader compilation by default +android.defaults.buildfeatures.shaders=false +# Disable Android resource processing by default +android.library.defaults.buildfeatures.androidresources=false # Suppress warnings for some features that aren't yet stabilized -android.suppressUnsupportedOptionWarnings=android.enableR8.fullMode,android.useMinimalKeepRules,android.namespacedRClass,android.suppressUnsupportedOptionWarnings +android.suppressUnsupportedOptionWarnings=android.keepWorkerActionServicesBetweenBuilds,\ + android.experimental.enableNewResourceShrinker,android.experimental.enableNewResourceShrinker.preciseShrinking,\ + android.enableAppCompileTimeRClass,android.experimental.enableSourceSetPathsMap,android.experimental.cacheCompileLibResources,\ + android.suppressUnsupportedOptionWarnings # OSSRH sometimes struggles with slow deployments, so this makes Gradle # more tolerant to those delays. -- cgit v1.2.3-59-g8ed1b