AndroidPluginVersion

class AndroidPluginVersion : Comparable<AndroidPluginVersion>
kotlin.Any
   ↳ com.android.build.api.AndroidPluginVersion

Represents a version of the Android Gradle Plugin

Designed for plugin authors to compare the currently running plugin version, so implements comparable.

For example AndroidPluginVersion(7, 0) refers to Android Gradle Plugin version 7.0.0, and AndroidPluginVersion(7, 0, 1) refers to Android Gradle Plugin version 7.0.1.

The internal representation is normalized, so that AndroidPluginVersion(7, 0) equals AndroidPluginVersion(7, 0, 0)

Also supports preview versions through methods alpha, beta and rc that return the more specific version. For example AndroidPluginVersion(7, 0).alpha(5) refers to Android Gradle Plugin version 7.0.0-alpha05. This is for use when developing using incubating APIs that have changed between preview releases of the Android Gradle Plugin. Once those APIs are stable in a stable version of Android Gradle Plugin, it's recommended to drop support for the preview versions. For example, if a new API was introduced in 7.0.0-alpha05, you can test for that using

if (androidComponents.pluginVersion >= AndroidPluginVersion(7.0).alpha(5)) { ... }

If that API is marked as stable in 7.0.0, drop support for the preview versions before it by updating your condition to:

if (androidComponents.pluginVersion >= AndroidPluginVersion(7.0)) { ... }

Summary

Public constructors

<init>(major: Int, minor: Int)

Create an AndroidPluginVersion with the given major and minor version.

<init>(major: Int, minor: Int, micro: Int)

Create an AndroidPluginVersion with the given major, minor and micro version.

Public methods

AndroidPluginVersion
alpha(alpha: Int)

From a stable AndroidPluginVersion returns an alpha version.

AndroidPluginVersion
beta(beta: Int)

From a stable AndroidPluginVersion returns a beta version.

Int

AndroidPluginVersion
dev()

From a stable AndroidPluginVersion specify an internal development version.

Boolean
equals(other: Any?)

Int

AndroidPluginVersion
rc(rc: Int)

From a stable AndroidPluginVersion returns a release candidate version.

String

Properties

Int

The major version.

Int

The micro, or patch version.

Int

The minor version.

Int

The preview version.

String?

The type of preview version.

Public constructors

<init>

AndroidPluginVersion(
    major: Int,
    minor: Int)

Create an AndroidPluginVersion with the given major and minor version.

For example AndroidPluginVersion(7, 0) refers to Android Gradle Plugin version 7.0.0.

<init>

AndroidPluginVersion(
    major: Int,
    minor: Int,
    micro: Int)

Create an AndroidPluginVersion with the given major, minor and micro version.

For example AndroidPluginVersion(7, 0, 1) refers to Android Gradle Plugin version 7.0.1.

Public methods

alpha

fun alpha(alpha: Int): AndroidPluginVersion

From a stable AndroidPluginVersion returns an alpha version.

For example AndroidPluginVersion(7, 0).alpha(5) refers to Android Gradle Plugin version 7.0.0-alpha05.

beta

fun beta(beta: Int): AndroidPluginVersion

From a stable AndroidPluginVersion returns a beta version.

For example AndroidPluginVersion(7, 0).beta(2) refers to Android Gradle Plugin version 7.0.0-beta02.

compareTo

fun compareTo(other: AndroidPluginVersion): Int

dev

@Incubating fun dev(): AndroidPluginVersion

From a stable AndroidPluginVersion specify an internal development version.

-dev versions are never publicly released, but this can be useful if you are building the Android Gradle Plugin from source.

For example AndroidPluginVersion(7, 0).dev() refers to Android Gradle Plugin version 7.0.0-dev.

equals

fun equals(other: Any?): Boolean

hashCode

fun hashCode(): Int

rc

fun rc(rc: Int): AndroidPluginVersion

From a stable AndroidPluginVersion returns a release candidate version.

For example AndroidPluginVersion(7, 0).rc(1) refers to Android Gradle Plugin version 7.0.0-rc01.

toString

fun toString(): String

Properties

major

val major: Int

The major version.

e.g. 7 for Android Gradle Plugin Version 7.0.1

micro

val micro: Int

The micro, or patch version.

e.g. 1 for Android Gradle Plugin Version 7.0.1

minor

val minor: Int

The minor version.

e.g. 0 for Android Gradle Plugin Version 7.0.1

preview

val preview: Int

The preview version.

e.g. 5 for Android Gradle Plugin Version 7.0.0-alpha05

previewType

val previewType: String?

The type of preview version.

Null in the case of a stable version. One of 'alpha', 'beta', 'rc', 'dev' for preview versions.

e.g. 'alpha' for Android Gradle Plugin Version 7.0.0-alpha05