Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions) Summary: [Methods](https://developer.android.com/reference/android/os/VibrationEffect.Envelope#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/os/VibrationEffect.Envelope#inhmethods)

# VibrationEffect.Envelope

*** ** * ** ***


`
public
static
final

class
VibrationEffect.Envelope
`


`

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


`

`


`

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

<br />

*** ** * ** ***

Represents a haptic effect defined by an envelope, to be used within a
`https://developer.android.com/reference/android/os/VibrationEffect.Builder`.

This class encapsulates Piecewise Linear Envelope (PWLE) effects, which can be created
using either the `https://developer.android.com/reference/android/os/VibrationEffect.WaveformEnvelopeBuilder` for direct amplitude and frequency control,
or the `https://developer.android.com/reference/android/os/VibrationEffect.BasicEnvelopeBuilder` for a more perception-based approach using intensity
and sharpness.

Envelopes are fundamental building blocks in the composition API, allowing for expressive
and complex haptic effects by sequencing them with other elements like `https://developer.android.com/reference/android/os/VibrationEffect.Preset`s.

## Summary

| ### Public methods ||
|---|---|
| ` static https://developer.android.com/reference/android/os/VibrationEffect.Envelope` | ` https://developer.android.com/reference/android/os/VibrationEffect.Envelope#create(android.os.VibrationEffect.WaveformEnvelopeBuilder)(https://developer.android.com/reference/android/os/VibrationEffect.WaveformEnvelopeBuilder builder) ` Creates a new haptic `https://developer.android.com/reference/android/os/VibrationEffect.Envelope` from the provided `https://developer.android.com/reference/android/os/VibrationEffect.WaveformEnvelopeBuilder`. |
| ` static https://developer.android.com/reference/android/os/VibrationEffect.Envelope` | ` https://developer.android.com/reference/android/os/VibrationEffect.Envelope#create(android.os.VibrationEffect.BasicEnvelopeBuilder)(https://developer.android.com/reference/android/os/VibrationEffect.BasicEnvelopeBuilder builder) ` Creates a new haptic `https://developer.android.com/reference/android/os/VibrationEffect.Envelope` from the provided `https://developer.android.com/reference/android/os/VibrationEffect.BasicEnvelopeBuilder`. |

### 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*.


## Public methods

### create

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

```
public static VibrationEffect.Envelope create (VibrationEffect.WaveformEnvelopeBuilder builder)
```

Creates a new haptic `https://developer.android.com/reference/android/os/VibrationEffect.Envelope` from the provided `https://developer.android.com/reference/android/os/VibrationEffect.WaveformEnvelopeBuilder`.

Note: Envelopes created from `https://developer.android.com/reference/android/os/VibrationEffect.WaveformEnvelopeBuilder` do not support haptics
fallback.

<br />

| Parameters ||
|---|---|
| `builder` | `VibrationEffect.WaveformEnvelopeBuilder`: The builder used to define the envelope's waveform. This value cannot be `null`. <br /> |

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

### create

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

```
public static VibrationEffect.Envelope create (VibrationEffect.BasicEnvelopeBuilder builder)
```

Creates a new haptic `https://developer.android.com/reference/android/os/VibrationEffect.Envelope` from the provided `https://developer.android.com/reference/android/os/VibrationEffect.BasicEnvelopeBuilder`.

<br />

| Parameters ||
|---|---|
| `builder` | `VibrationEffect.BasicEnvelopeBuilder`: The builder used to define the envelope's basic parameters. This value cannot be `null`. <br /> |

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