Android Gradle Plugin 9.4.0

9.4.0
Added 4
  • Support for API level 37 as the maximum API level
  • Variant API module opt-out capability via android.newDsl.optOut in gradle.properties for temporary migration support before AGP 10
  • Build system now checks for strict 1:1 flavor dimension parity between Android app modules and dynamic feature modules, reporting mismatches as warnings by default
  • android.enforceDynamicFeatureVariantMatching Gradle option to promote variant parity dimension mismatches to execution errors
Changed 3
  • Minimum Gradle version requirement is now 9.6.0
  • Default SDK Build Tools version is now 36.0.0
  • Default NDK version is now 28.2.13676358

From Android Gradle Plugin

Android Gradle plugin 9.4 is a minor release that includes a variety of new features and improvements.

Compatibility

The maximum API level that Android Gradle plugin 9.4 supports is API level 37. Here is other compatibility info:

Minimum versionDefault versionNotes
Gradle9.6.09.6.0To learn more, see updating Gradle.
SDK Build Tools36.0.036.0.0Install or configure SDK Build Tools.
NDKN/A28.2.13676358Install or configure a different version of the NDK.
JDK1717To learn more, see setting the JDK version.
Variant API module opt-out

Starting with AGP 10, the new Variant API is mandatory for all projects. To support a gradual migration, you can temporarily opt specific modules out of this requirement before AGP 10 by applying the following to your gradle.properties file.

android.newDsl.optOut=:example-lib1
Strict 1:1 variant parity between dynamic feature and android apps

Starting in AGP 9.4, the build system checks for strict 1:1 flavor dimension parity between Android app modules and dynamic feature modules, reporting any missing, extra, or mismatched dimensions as build warnings. To help you prepare for stricter validation without breaking existing build pipelines, this check operates in warning mode by default, but can be promoted to an execution error by enabling the android.enforceDynamicFeatureVariantMatching=true Gradle option. From AGP 10.0 onwards, strict 1:1 variant parity will become enforced by default, turning all dimension mismatches between base apps and their dynamic feature modules into fatal build failures.

View original

Upgraded? How did it go?

Discussion