# MediaSession.ProgressReporter

Artifact: [androidx.media3:media3-session](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/session/MediaSession.java+class:androidx.media3.session.MediaSession.ProgressReporter)

*** ** * ** ***

<br />

```
@UnstableApi
interface MediaSession.ProgressReporter
```

<br />

*** ** * ** ***

A progress reporter to report progress for a custom command sent by a controller.

A non-null instance is passed to `https://developer.android.com/reference/kotlin/androidx/media3/session/MediaSession.Callback#onCustomCommand(androidx.media3.session.MediaSession,androidx.media3.session.MediaSession.ControllerInfo,androidx.media3.session.SessionCommand,android.os.Bundle,androidx.media3.session.MediaSession.ProgressReporter)` in case the controller requests progress updates.

## Summary

| ### Public functions |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/session/MediaSession.ProgressReporter#sendProgressUpdate(android.os.Bundle)(progressData: https://developer.android.com/reference/android/os/Bundle.html!)` Sends a progress update to the controller that has sent a custom command. |

## Public functions

### sendProgressUpdate

```
fun sendProgressUpdate(progressData: Bundle!): Unit
```

Sends a progress update to the controller that has sent a custom command.

Updates can be sent as long as the `https://guava.dev/releases/snapshot-android/api/docs/com/google/common/util/concurrent/ListenableFuture.html` returned by `https://developer.android.com/reference/kotlin/androidx/media3/session/MediaSession.Callback#onCustomCommand(androidx.media3.session.MediaSession,androidx.media3.session.MediaSession.ControllerInfo,androidx.media3.session.SessionCommand,android.os.Bundle,androidx.media3.session.MediaSession.ProgressReporter)` is not done. Sending updates after completion of the future results in a no-op.

| Parameters |
|---|---|
| `progressData: https://developer.android.com/reference/android/os/Bundle.html!` | The progress data `https://developer.android.com/reference/android/os/Bundle.html` to be sent to the controller. |