# MediaItemStatus.Builder

Artifact: [androidx.mediarouter:mediarouter](https://developer.android.com/jetpack/androidx/releases/mediarouter) [View Source](https://cs.android.com/search?q=file:androidx/mediarouter/media/MediaItemStatus.java+class:androidx.mediarouter.media.MediaItemStatus.Builder) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/mediarouter#1.1.0)

*** ** * ** ***


```
public final class MediaItemStatus.Builder
```

<br />

*** ** * ** ***

Builder for `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus`.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder#Builder(int)(int playbackState)` Creates a media item status builder using the current time as the reference timestamp. |
| `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder#Builder(androidx.mediarouter.media.MediaItemStatus)(@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus status)` Creates a media item status builder whose initial contents are copied from an existing status. |

| ### Public methods |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus` | `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder#build()()` Builds the `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus`. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder` | `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder#setContentDuration(long)(long durationMilliseconds)` Sets the total duration of the content to be played as a long integer number of milliseconds. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder` | `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder#setContentPosition(long)(long positionMilliseconds)` Sets the content playback position as a long integer number of milliseconds from the beginning of the content. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder` | `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder#setExtras(android.os.Bundle)(@https://jspecify.dev/docs/api/org/jspecify/annotations/Nullable.html https://developer.android.com/reference/android/os/Bundle.html extras)` Sets a bundle of extras for this status object. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder` | `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder#setPlaybackState(int)(int playbackState)` Sets the playback state of the media item. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder` | `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus.Builder#setTimestamp(long)(long elapsedRealtimeTimestamp)` Sets the timestamp associated with the status information in milliseconds since boot in the `https://developer.android.com/reference/android/os/SystemClock.html#elapsedRealtime()` time base. |

## Public constructors

### Builder

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

```
public Builder(int playbackState)
```

Creates a media item status builder using the current time as the reference timestamp.

| Parameters |
|---|---|
| `int playbackState` | The item playback state. |

### Builder

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

```
public Builder(@NonNull MediaItemStatus status)
```

Creates a media item status builder whose initial contents are copied from an existing status.

## Public methods

### build

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

```
public @NonNull MediaItemStatus build()
```

Builds the `https://developer.android.com/reference/androidx/mediarouter/media/MediaItemStatus`.

### setContentDuration

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

```
public @NonNull MediaItemStatus.Builder setContentDuration(long durationMilliseconds)
```

Sets the total duration of the content to be played as a long integer number of milliseconds.

### setContentPosition

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

```
public @NonNull MediaItemStatus.Builder setContentPosition(long positionMilliseconds)
```

Sets the content playback position as a long integer number of milliseconds from the beginning of the content.

### setExtras

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

```
public @NonNull MediaItemStatus.Builder setExtras(@Nullable Bundle extras)
```

Sets a bundle of extras for this status object. The extras will be ignored by the media router but they may be used by applications.

### setPlaybackState

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

```
public @NonNull MediaItemStatus.Builder setPlaybackState(int playbackState)
```

Sets the playback state of the media item.

### setTimestamp

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

```
public @NonNull MediaItemStatus.Builder setTimestamp(long elapsedRealtimeTimestamp)
```

Sets the timestamp associated with the status information in milliseconds since boot in the `https://developer.android.com/reference/android/os/SystemClock.html#elapsedRealtime()` time base.