# SecurityPatchState.VersionedSecurityPatchLevel

Artifact: [androidx.security:security-state](https://developer.android.com/jetpack/androidx/releases/security) [View Source](https://cs.android.com/search?q=file:androidx/security/state/SecurityPatchState.kt+class:androidx.security.state.SecurityPatchState.VersionedSecurityPatchLevel) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/security#1.0.0)

*** ** * ** ***


```
public final class SecurityPatchState.VersionedSecurityPatchLevel extends SecurityPatchState.SecurityPatchLevel
```

<br />

|---|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object.html) |||
| ↳ | [androidx.security.state.SecurityPatchState.SecurityPatchLevel](https://developer.android.com/reference/androidx/security/state/SecurityPatchState.SecurityPatchLevel) ||
|   | ↳ | [androidx.security.state.SecurityPatchState.VersionedSecurityPatchLevel](https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel) |

*** ** * ** ***

Implementation of `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.SecurityPatchLevel` for a versioned patch level.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel#VersionedSecurityPatchLevel(kotlin.Int,kotlin.Int,kotlin.Int,kotlin.Int)( int majorVersion, int minorVersion, int buildVersion, int patchVersion )` |

| ### Public methods |
|---|---|
| `int` | `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel#compareTo(androidx.security.state.SecurityPatchState.SecurityPatchLevel)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/security/state/SecurityPatchState.SecurityPatchLevel other)` |
| `static final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel` | `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel#fromString(kotlin.String)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html value)` Creates a new `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel` from a string representation of the version. |
| `final int` | `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel#getBuildVersion()()` Build version of the security patch level. |
| `final int` | `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel#getMajorVersion()()` Major version of the security patch level. |
| `final int` | `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel#getMinorVersion()()` Minor version of the security patch level. |
| `final int` | `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel#getPatchVersion()()` Patch version of the security patch level. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel#toString()()` |

## Public constructors

### VersionedSecurityPatchLevel

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/security#1.0.0)

```
public VersionedSecurityPatchLevel(
    int majorVersion,
    int minorVersion,
    int buildVersion,
    int patchVersion
)
```

## Public methods

### compareTo

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/security#1.0.0)

```
public int compareTo(@NonNull SecurityPatchState.SecurityPatchLevel other)
```

### fromString

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/security#1.0.0)

```
public static final @NonNull SecurityPatchState.VersionedSecurityPatchLevel fromString(@NonNull String value)
```

Creates a new `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel` from a string representation of the version.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html value` | The version string in the format of "major.minor.build.patch". |

| Returns |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel` | A new `https://developer.android.com/reference/androidx/security/state/SecurityPatchState.VersionedSecurityPatchLevel` representing the version. |

| Throws |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-illegal-argument-exception/index.html` | if the version string is not in the correct format. |

### getBuildVersion

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/security#1.0.0)

```
public final int getBuildVersion()
```

Build version of the security patch level.

### getMajorVersion

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/security#1.0.0)

```
public final int getMajorVersion()
```

Major version of the security patch level.

### getMinorVersion

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/security#1.0.0)

```
public final int getMinorVersion()
```

Minor version of the security patch level.

### getPatchVersion

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/security#1.0.0)

```
public final int getPatchVersion()
```

Patch version of the security patch level.

### toString

```
public @NonNull String toString()
```