Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Nested Classes](https://developer.android.com/reference/android/os/VibrationAttributes#nestedclasses) \| [Constants](https://developer.android.com/reference/android/os/VibrationAttributes#constants) \| [Inherited Constants](https://developer.android.com/reference/android/os/VibrationAttributes#inhconstants) \| [Fields](https://developer.android.com/reference/android/os/VibrationAttributes#lfields) \| [Methods](https://developer.android.com/reference/android/os/VibrationAttributes#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/os/VibrationAttributes#inhmethods)

# VibrationAttributes

*** ** * ** ***

[Kotlin](https://developer.android.com/reference/kotlin/android/os/VibrationAttributes "View this page in Kotlin") \|Java


`
public

final

class
VibrationAttributes
`


`

extends https://developer.android.com/reference/java/lang/Object


`

`


implements

https://developer.android.com/reference/android/os/Parcelable


`

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.os.VibrationAttributes |

<br />

*** ** * ** ***

Encapsulates a collection of attributes describing information about a vibration.

## Summary

| ### Nested classes ||
|---|---|
| ` class` | `https://developer.android.com/reference/android/os/VibrationAttributes.Builder` Builder class for `https://developer.android.com/reference/android/os/VibrationAttributes` objects. |

| ### Constants ||
|---|---|
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#FLAG_BYPASS_INTERRUPTION_POLICY` Flag requesting vibration effect to be played even under limited interruptions. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_ACCESSIBILITY` Usage value to use for accessibility vibrations, such as with a screen reader. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_ALARM` Usage value to use for alarm vibrations. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_CLASS_ALARM` Vibration usage class value to use when the vibration is initiated to catch user's attention, such as alarm, ringtone, and notification vibrations. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_CLASS_FEEDBACK` Vibration usage class value to use when the vibration is initiated as a response to user's actions, such as emulation of physical effects, and texting feedback vibration. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_CLASS_MASK` Mask for vibration usage class value. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_CLASS_MEDIA` Vibration usage class value to use when the vibration is part of media, such as music, movie, soundtrack, game or animations. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_CLASS_UNKNOWN` Vibration usage class value to use when the vibration usage class is unknown. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_COMMUNICATION_REQUEST` Usage value to use for vibrations which mean a request to enter/end a communication with the user, such as a voice prompt. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_GESTURE_INPUT` Usage value to use for vibrations performed as feedback for a user's gesture input. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_HARDWARE_FEEDBACK` Usage value to use for vibrations which provide a feedback for hardware component interaction, such as a fingerprint sensor. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_MEDIA` Usage value to use for media vibrations, such as music, movie, soundtrack, animations, games, or any interactive media that isn't for touch feedback specifically. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_NOTIFICATION` Usage value to use for notification vibrations. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_PHYSICAL_EMULATION` Usage value to use for vibrations which emulate physical hardware reactions, such as edge squeeze. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_RINGTONE` Usage value to use for ringtone vibrations. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_TOUCH` Usage value to use for touch vibrations. |
| `int` | `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_UNKNOWN` Usage value to use when usage is unknown. |

| ### Inherited constants |
|---|
| From interface `https://developer.android.com/reference/android/os/Parcelable` |---|---| | `int` | `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` Descriptor bit used with `https://developer.android.com/reference/android/os/Parcelable#describeContents()`: indicates that the Parcelable object's flattened representation includes a file descriptor. | | `int` | `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE` Flag for use with `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`: the object being written is a return value, that is the result of a function such as "`Parcelable someFunction()`", "`void someFunction(out Parcelable)`", or "`void someFunction(inout Parcelable)`". | |

| ### Fields ||
|---|---|
| ` public static final https://developer.android.com/reference/android/os/Parcelable.Creator<https://developer.android.com/reference/android/os/VibrationAttributes>` | `https://developer.android.com/reference/android/os/VibrationAttributes#CREATOR` |

| ### Public methods ||
|---|---|
| ` static https://developer.android.com/reference/android/os/VibrationAttributes` | ` https://developer.android.com/reference/android/os/VibrationAttributes#createForUsage(int)(int usage) ` Creates a new `https://developer.android.com/reference/android/os/VibrationAttributes` instance with given usage. |
| ` int` | ` https://developer.android.com/reference/android/os/VibrationAttributes#describeContents()() ` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
| ` boolean` | ` https://developer.android.com/reference/android/os/VibrationAttributes#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object o) ` Indicates whether some other object is "equal to" this one. |
| ` int` | ` https://developer.android.com/reference/android/os/VibrationAttributes#getFlags()() ` Return the flags. |
| ` int` | ` https://developer.android.com/reference/android/os/VibrationAttributes#getUsage()() ` Return the vibration usage. |
| ` int` | ` https://developer.android.com/reference/android/os/VibrationAttributes#getUsageClass()() ` Return the vibration usage class. |
| ` int` | ` https://developer.android.com/reference/android/os/VibrationAttributes#hashCode()() ` Returns a hash code value for the object. |
| ` boolean` | ` https://developer.android.com/reference/android/os/VibrationAttributes#isFlagSet(int)(int flag) ` Check whether a flag is set |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/os/VibrationAttributes#toString()() ` Returns a string representation of the object. |
| ` void` | ` https://developer.android.com/reference/android/os/VibrationAttributes#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel dest, int flags) ` Flatten this object in to a Parcel. |

| ### Inherited methods |
|---|---|
| From class ` https://developer.android.com/reference/java/lang/Object ` |---|---| | ` https://developer.android.com/reference/java/lang/Object` | ` https://developer.android.com/reference/java/lang/Object#clone()() ` Creates and returns a copy of this object. | | ` boolean` | ` https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) ` Indicates whether some other object is "equal to" this one. | | ` void` | ` https://developer.android.com/reference/java/lang/Object#finalize()() ` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. | | ` final https://developer.android.com/reference/java/lang/Class<?>` | ` https://developer.android.com/reference/java/lang/Object#getClass()() ` Returns the runtime class of this `Object`. | | ` int` | ` https://developer.android.com/reference/java/lang/Object#hashCode()() ` Returns a hash code value for the object. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#notify()() ` Wakes up a single thread that is waiting on this object's monitor. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#notifyAll()() ` Wakes up all threads that are waiting on this object's monitor. | | ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/java/lang/Object#toString()() ` Returns a string representation of the object. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos) ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis) ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#wait()() ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*. | ||
| From interface ` https://developer.android.com/reference/android/os/Parcelable ` |---|---| | ` abstract int` | ` https://developer.android.com/reference/android/os/Parcelable#describeContents()() ` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. | | ` abstract void` | ` https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel dest, int flags) ` Flatten this object in to a Parcel. | ||

## Constants

### FLAG_BYPASS_INTERRUPTION_POLICY

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int FLAG_BYPASS_INTERRUPTION_POLICY
```

Flag requesting vibration effect to be played even under limited interruptions.

Only privileged apps can ignore user settings that limit interruptions, and this
flag will be ignored otherwise.

<br />

Constant Value:

1
(0x00000001)


### USAGE_ACCESSIBILITY

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_ACCESSIBILITY
```

Usage value to use for accessibility vibrations, such as with a screen reader.

<br />

Constant Value:

66
(0x00000042)


### USAGE_ALARM

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_ALARM
```

Usage value to use for alarm vibrations.

<br />

Constant Value:

17
(0x00000011)


### USAGE_CLASS_ALARM

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_CLASS_ALARM
```

Vibration usage class value to use when the vibration is initiated to catch user's
attention, such as alarm, ringtone, and notification vibrations.

<br />

Constant Value:

1
(0x00000001)


### USAGE_CLASS_FEEDBACK

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_CLASS_FEEDBACK
```

Vibration usage class value to use when the vibration is initiated as a response to user's
actions, such as emulation of physical effects, and texting feedback vibration.

<br />

Constant Value:

2
(0x00000002)


### USAGE_CLASS_MASK

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_CLASS_MASK
```

Mask for vibration usage class value.

<br />

Constant Value:

15
(0x0000000f)


### USAGE_CLASS_MEDIA

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_CLASS_MEDIA
```

Vibration usage class value to use when the vibration is part of media, such as music, movie,
soundtrack, game or animations.

<br />

Constant Value:

3
(0x00000003)


### USAGE_CLASS_UNKNOWN

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_CLASS_UNKNOWN
```

Vibration usage class value to use when the vibration usage class is unknown.

<br />

Constant Value:

0
(0x00000000)


### USAGE_COMMUNICATION_REQUEST

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_COMMUNICATION_REQUEST
```

Usage value to use for vibrations which mean a request to enter/end a
communication with the user, such as a voice prompt.

<br />

Constant Value:

65
(0x00000041)


### USAGE_GESTURE_INPUT

Added in [version 36.1](https://developer.android.com/topic/libraries/support-library/revisions)

```
public static final int USAGE_GESTURE_INPUT
```

Usage value to use for vibrations performed as feedback for a user's gesture input.

A gesture input is broadly defined as a user input that falls outside the direct
usage of a physical `https://developer.android.com/`. Note that the gesture input may involve interacting
with an `https://developer.android.com/`, but the input itself is a user gesture that is not a direct
application of the `https://developer.android.com/`.

The exact definition of a gesture input varies across form-factors and input modalities.
For example, on Wearable devices, it could be a hand-based gesture provided by the user
without touching any physical `https://developer.android.com/`. Another example is a pinch gesture on a
touchscreen.

<br />

Constant Value:

98
(0x00000062)


### USAGE_HARDWARE_FEEDBACK

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_HARDWARE_FEEDBACK
```

Usage value to use for vibrations which provide a feedback for hardware
component interaction, such as a fingerprint sensor.

<br />

Constant Value:

50
(0x00000032)


### USAGE_MEDIA

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_MEDIA
```

Usage value to use for media vibrations, such as music, movie, soundtrack, animations, games,
or any interactive media that isn't for touch feedback specifically.

<br />

Constant Value:

19
(0x00000013)


### USAGE_NOTIFICATION

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_NOTIFICATION
```

Usage value to use for notification vibrations.

<br />

Constant Value:

49
(0x00000031)


### USAGE_PHYSICAL_EMULATION

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_PHYSICAL_EMULATION
```

Usage value to use for vibrations which emulate physical hardware reactions,
such as edge squeeze.

Note that normal screen-touch feedback "click" effects would typically be
classed as `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_TOUCH`, and that on-screen "physical" animations
like bouncing would be `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_MEDIA`.

<br />

Constant Value:

34
(0x00000022)


### USAGE_RINGTONE

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_RINGTONE
```

Usage value to use for ringtone vibrations.

<br />

Constant Value:

33
(0x00000021)


### USAGE_TOUCH

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_TOUCH
```

Usage value to use for touch vibrations.

Most typical haptic feedback should be classed as *touch* feedback. Examples
include vibrations for tap, long press, drag and scroll.

<br />

Constant Value:

18
(0x00000012)


### USAGE_UNKNOWN

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int USAGE_UNKNOWN
```

Usage value to use when usage is unknown.

<br />

Constant Value:

0
(0x00000000)


## Fields

### CREATOR

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final Creator<VibrationAttributes> CREATOR
```

<br />

<br />

## Public methods

### createForUsage

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static VibrationAttributes createForUsage (int usage)
```

Creates a new `https://developer.android.com/reference/android/os/VibrationAttributes` instance with given usage.

<br />

| Parameters ||
|---|---|
| `usage` | `int`: Value is one of the following: - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_UNKNOWN` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_ACCESSIBILITY` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_ALARM` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_COMMUNICATION_REQUEST` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_HARDWARE_FEEDBACK` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_MEDIA` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_NOTIFICATION` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_PHYSICAL_EMULATION` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_RINGTONE` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_TOUCH` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_GESTURE_INPUT` |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/os/VibrationAttributes` | This value cannot be `null`. <br /> |

### describeContents

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int describeContents ()
```

Describe the kinds of special objects contained in this Parcelable
instance's marshaled representation. For example, if the object will
include a file descriptor in the output of `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`,
the return value of this method must include the
`https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` bit.

<br />

| Returns ||
|---|---|
| `int` | a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either `0` or - `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` |

### equals

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean equals (Object o)
```

Indicates whether some other object is "equal to" this one.


The `equals` method implements an equivalence relation
on non-null object references:

- It is *reflexive*: for any non-null reference value `x`, `x.equals(x)` should return `true`.
- It is *symmetric*: for any non-null reference values `x` and `y`, `x.equals(y)` should return `true` if and only if `y.equals(x)` returns `true`.
- It is *transitive*: for any non-null reference values `x`, `y`, and `z`, if `x.equals(y)` returns `true` and `y.equals(z)` returns `true`, then `x.equals(z)` should return `true`.
- It is *consistent*: for any non-null reference values `x` and `y`, multiple invocations of `x.equals(y)` consistently return `true` or consistently return `false`, provided no information used in `equals` comparisons on the objects is modified.
- For any non-null reference value `x`, `x.equals(null)` should return `false`.


An equivalence relation partitions the elements it operates on
into *equivalence classes*; all the members of an
equivalence class are equal to each other. Members of an
equivalence class are substitutable for each other, at least
for some purposes.

<br />

| Parameters ||
|---|---|
| `o` | `Object`: This value may be `null`. <br /> |

| Returns ||
|---|---|
| `boolean` | `true` if this object is the same as the obj argument; `false` otherwise. <br /> |

### getFlags

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getFlags ()
```

Return the flags.

<br />

| Returns ||
|---|---|
| `int` | a combined mask of all flags. Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/os/VibrationAttributes#FLAG_BYPASS_INTERRUPTION_POLICY` |

### getUsage

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getUsage ()
```

Return the vibration usage.

<br />

| Returns ||
|---|---|
| `int` | Value is one of the following: - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_UNKNOWN` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_ACCESSIBILITY` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_ALARM` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_COMMUNICATION_REQUEST` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_HARDWARE_FEEDBACK` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_MEDIA` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_NOTIFICATION` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_PHYSICAL_EMULATION` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_RINGTONE` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_TOUCH` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_GESTURE_INPUT` |

### getUsageClass

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getUsageClass ()
```

Return the vibration usage class.

<br />

| Returns ||
|---|---|
| `int` | Value is one of the following: - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_CLASS_UNKNOWN` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_CLASS_ALARM` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_CLASS_FEEDBACK` - `https://developer.android.com/reference/android/os/VibrationAttributes#USAGE_CLASS_MEDIA` |

### hashCode

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int hashCode ()
```

Returns a hash code value for the object. This method is
supported for the benefit of hash tables such as those provided by
`https://developer.android.com/reference/java/util/HashMap`.


The general contract of `hashCode` is:

- Whenever it is invoked on the same object more than once during an execution of a Java application, the `hashCode` method must consistently return the same integer, provided no information used in `equals` comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
- If two objects are equal according to the `https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)` method, then calling the `hashCode` method on each of the two objects must produce the same integer result.
- It is *not* required that if two objects are unequal according to the `https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)` method, then calling the `hashCode` method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

<br />

<br />

| Returns ||
|---|---|
| `int` | a hash code value for this object. <br /> |

### isFlagSet

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isFlagSet (int flag)
```

Check whether a flag is set

<br />

| Parameters ||
|---|---|
| `flag` | `int`: Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/os/VibrationAttributes#FLAG_BYPASS_INTERRUPTION_POLICY` |

| Returns ||
|---|---|
| `boolean` | true if a flag is set and false otherwise <br /> |

### toString

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public String toString ()
```

Returns a string representation of the object.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | a string representation of the object. <br /> |

### writeToParcel

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void writeToParcel (Parcel dest, 
                int flags)
```

Flatten this object in to a Parcel.

<br />

| Parameters ||
|---|---|
| `dest` | `Parcel`: This value cannot be `null`. <br /> |
| `flags` | `int`: Additional flags about how the object should be written. May be 0 or `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE`. Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE` |