# UserAgentMetadata

Artifact: [androidx.webkit:webkit](https://developer.android.com/jetpack/androidx/releases/webkit) [View Source](https://cs.android.com/search?q=file:androidx/webkit/UserAgentMetadata.java+class:androidx.webkit.UserAgentMetadata) Added in [1.9.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.9.0)

*** ** * ** ***


```
class UserAgentMetadata
```

<br />

*** ** * ** ***

Holds user-agent metadata information and uses to generate user-agent client hints.

This class is functionally equivalent to [UADataValues](https://wicg.github.io/ua-client-hints/#interface).

## Summary

| ### Nested types |
|---|
| `class https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.BrandVersion` Class that holds brand name, major version and full version. |
| `class https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.BrandVersion.Builder` Builder used to create `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.BrandVersion` objects. |
| `class https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder` Builder used to create `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata` objects. |

| ### Constants |
|---|---|
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#BITNESS_DEFAULT() = 0` Use this value for bitness to use the platform's default bitness value, which is an empty string for Android WebView. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_AUTOMOTIVE() = "Automotive"` Form factor option: `Automotive`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_DESKTOP() = "Desktop"` Form factor option: `Desktop`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_EINK() = "EInk"` Form factor option: `EInk`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_MOBILE() = "Mobile"` Form factor option: `Mobile`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_TABLET() = "Tablet"` Form factor option: `Tablet`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_WATCH() = "Watch"` Form factor option: `Watch`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_XR() = "XR"` Form factor option: `XR`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`. |

| ### Public functions |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#equals(java.lang.Object)(o: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html!)` Two UserAgentMetadata objects are equal only if all the metadata values are equal. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getArchitecture()()` Returns the value for the `sec-ch-ua-arch` client hint. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getBitness()()` Returns the value for the `sec-ch-ua-bitness` client hint. |
| `(https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html)https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.BrandVersion!>` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getBrandVersionList()()` Returns the current list of user-agent brand versions which are used to populate user-agent client hints `sec-ch-ua` and `sec-ch-ua-full-version-list`. |
| `(https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html)https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()()` Returns the value for the `sec-ch-ua-form-factors` client hint. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFullVersion()()` Returns the value for the `sec-ch-ua-full-version` client hint. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getModel()()` Returns the value for the `sec-ch-ua-model` client hint. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getPlatform()()` Returns the value for the `sec-ch-ua-platform` client hint. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getPlatformVersion()()` Returns the value for the `sec-ch-ua-platform-version` client hint. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#hashCode()()` |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#isMobile()()` Returns the value for the `sec-ch-ua-mobile` client hint. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#isWow64()()` Returns the value for the `sec-ch-ua-wow64` client hint. |

## Constants

### BITNESS_DEFAULT

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

```
const val BITNESS_DEFAULT = 0: Int
```

Use this value for bitness to use the platform's default bitness value, which is an empty string for Android WebView.

### FORM_FACTOR_AUTOMOTIVE

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

```
const val FORM_FACTOR_AUTOMOTIVE = "Automotive": String!
```

Form factor option: `Automotive`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`.

### FORM_FACTOR_DESKTOP

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

```
const val FORM_FACTOR_DESKTOP = "Desktop": String!
```

Form factor option: `Desktop`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`.

### FORM_FACTOR_EINK

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

```
const val FORM_FACTOR_EINK = "EInk": String!
```

Form factor option: `EInk`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`.

### FORM_FACTOR_MOBILE

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

```
const val FORM_FACTOR_MOBILE = "Mobile": String!
```

Form factor option: `Mobile`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`.

### FORM_FACTOR_TABLET

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

```
const val FORM_FACTOR_TABLET = "Tablet": String!
```

Form factor option: `Tablet`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`.

### FORM_FACTOR_WATCH

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

```
const val FORM_FACTOR_WATCH = "Watch": String!
```

Form factor option: `Watch`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`.

### FORM_FACTOR_XR

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

```
const val FORM_FACTOR_XR = "XR": String!
```

Form factor option: `XR`, to be used with `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#getFormFactors()`.

## Public functions

### equals

```
fun equals(o: Any!): Boolean
```

Two UserAgentMetadata objects are equal only if all the metadata values are equal.

### getArchitecture

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

```
fun getArchitecture(): String?
```

Returns the value for the `sec-ch-ua-arch` client hint.

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setArchitecture(java.lang.String)` |   |

### getBitness

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

```
fun getBitness(): Int
```

Returns the value for the `sec-ch-ua-bitness` client hint.

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | An integer indicates the CPU bitness, the integer value will convert to string when generating the user-agent client hint, and `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#BITNESS_DEFAULT()` means an empty string. |

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setBitness(int)` |   |

### getBrandVersionList

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

```
fun getBrandVersionList(): (Mutable)List<UserAgentMetadata.BrandVersion!>
```

Returns the current list of user-agent brand versions which are used to populate user-agent client hints `sec-ch-ua` and `sec-ch-ua-full-version-list`. Each `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.BrandVersion` object holds the brand name, brand major version and brand full version.

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setBrandVersionList(java.util.List<androidx.webkit.UserAgentMetadata.BrandVersion>)` |   |

### getFormFactors

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

```
fun getFormFactors(): (Mutable)List<String!>
```

Returns the value for the `sec-ch-ua-form-factors` client hint. Value should be one or more of `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_DESKTOP()`, `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_AUTOMOTIVE()`, `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_MOBILE()`, `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_TABLET()`, `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_XR()`, `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_EINK()`, `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata#FORM_FACTOR_WATCH()`. See the [spec](https://wicg.github.io/ua-client-hints/#sec-ch-ua-form-factors) for more details.

| Returns |
|---|---|
| `(https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html)https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>` | A list of strings to indicate the form factors of the user-agent. |

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFormFactors(java.util.List<java.lang.String>)` |   |

### getFullVersion

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

```
fun getFullVersion(): String?
```

Returns the value for the `sec-ch-ua-full-version` client hint.

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setFullVersion(java.lang.String)` |   |

### getModel

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

```
fun getModel(): String?
```

Returns the value for the `sec-ch-ua-model` client hint.

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setModel(java.lang.String)` |   |

### getPlatform

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

```
fun getPlatform(): String?
```

Returns the value for the `sec-ch-ua-platform` client hint.

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setPlatform(java.lang.String)` |   |

### getPlatformVersion

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

```
fun getPlatformVersion(): String?
```

Returns the value for the `sec-ch-ua-platform-version` client hint.

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` | Platform version string. |

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setPlatformVersion(java.lang.String)` |   |

### hashCode

```
fun hashCode(): Int
```

### isMobile

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

```
fun isMobile(): Boolean
```

Returns the value for the `sec-ch-ua-mobile` client hint.

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | A boolean indicates user-agent's device mobileness. |

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setMobile(boolean)` |   |

### isWow64

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

```
fun isWow64(): Boolean
```

Returns the value for the `sec-ch-ua-wow64` client hint.

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | A boolean to indicate whether user-agent's binary is running in 32-bit mode on 64-bit Windows. |

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/webkit/UserAgentMetadata.Builder#setWow64(boolean)` |   |