# PlaybackSeekDataProvider

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

*** ** * ** ***


```
public class PlaybackSeekDataProvider
```

<br />

*** ** * ** ***

Class to be implemented by app to provide seeking data and thumbnails to UI.

## Summary

| ### Nested types |
|---|
| `public class https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider.ResultCallback` Client to receive result for `https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider#getThumbnail(int,androidx.leanback.widget.PlaybackSeekDataProvider.ResultCallback)`. |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider#PlaybackSeekDataProvider()()` |

| ### Public methods |
|---|---|
| `long[]` | `https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider#getSeekPositions()()` Get a list of sorted seek positions. |
| `void` | `https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider#getThumbnail(int,androidx.leanback.widget.PlaybackSeekDataProvider.ResultCallback)( int index, https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider.ResultCallback callback )` Called to get thumbnail bitmap. |
| `void` | `https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider#reset()()` Called when seek stops, Provider should cancel pending requests for the thumbnails. |

## Public constructors

### PlaybackSeekDataProvider

Added in 1.1.0

```
public PlaybackSeekDataProvider()
```

## Public methods

### getSeekPositions

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

```
public long[] getSeekPositions()
```

Get a list of sorted seek positions. The positions should not change after user starts seeking.

| Returns |
|---|---|
| `long[]` | A list of sorted seek positions. |

### getThumbnail

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

```
public void getThumbnail(
    int index,
    PlaybackSeekDataProvider.ResultCallback callback
)
```

Called to get thumbnail bitmap. This method is called on UI thread. When provider finds cache bitmap, it may invoke `https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider.ResultCallback#onThumbnailLoaded(android.graphics.Bitmap,int)` immediately. Provider may start background thread and invoke `https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider.ResultCallback#onThumbnailLoaded(android.graphics.Bitmap,int)` later in UI thread. The method might be called multiple times for the same position, PlaybackSeekDataProvider must guarantee to replace pending `https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider.ResultCallback` with the new one. When seeking right, getThumbnail() will be called with increasing index; when seeking left, getThumbnail() will be called with decreasing index. The increment of index can be used by subclass to determine prefetch direction.

| Parameters |
|---|---|
| `int index` | Index of position in `https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider#getSeekPositions()`. |
| `https://developer.android.com/reference/androidx/leanback/widget/PlaybackSeekDataProvider.ResultCallback callback` | The callback to receive the result on UI thread. It may be called within getThumbnail() if hit cache directly. |

### reset

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

```
public void reset()
```

Called when seek stops, Provider should cancel pending requests for the thumbnails.