# BundleListRetriever

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

*** ** * ** ***

<br />

```
@UnstableApi
class BundleListRetriever : Binder
```

<br />

|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||
| ↳ | [android.os.Binder](https://developer.android.com/reference/android/os/Binder.html) ||
|   | ↳ | [androidx.media3.common.BundleListRetriever](https://developer.android.com/reference/kotlin/androidx/media3/common/BundleListRetriever) |

*** ** * ** ***

A `https://developer.android.com/reference/android/os/Binder.html` to transfer a list of `https://developer.android.com/reference/android/os/Bundle.html` across processes by splitting the list into multiple transactions.

Note: Using this class causes synchronous binder calls in the opposite direction regardless of the "oneway" property.

Example usage:

```kotlin
// Sender
ImmutableList<Bundle> list = ...;
IBinder binder = new BundleListRetriever(list);
Bundle bundle = new Bundle();
bundle.putBinder("list", binder);

// Receiver
Bundle bundle = ...; // Received from the sender
IBinder binder = bundle.getBinder("list");
ImmutableList<Bundle> list = BundleListRetriever.getList(binder);
```

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/common/BundleListRetriever#BundleListRetriever(java.util.List<android.os.Bundle>)(list: (https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html)https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/android/os/Bundle.html!>!)` Creates a `https://developer.android.com/reference/android/os/Binder.html` to send a list of `https://developer.android.com/reference/android/os/Bundle.html` to another process. |

| ### Public functions |
|---|---|
| `java-static https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://developer.android.com/reference/android/os/Bundle.html!>!` | `https://developer.android.com/reference/kotlin/androidx/media3/common/BundleListRetriever#getList(android.os.IBinder)(binder: https://developer.android.com/reference/android/os/IBinder.html!)` Gets a list of `https://developer.android.com/reference/android/os/Bundle.html` from a `https://developer.android.com/reference/kotlin/androidx/media3/common/BundleListRetriever`. |

| ### Protected functions |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/common/BundleListRetriever#onTransact(int,android.os.Parcel,android.os.Parcel,int)(code: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, data: https://developer.android.com/reference/android/os/Parcel.html!, reply: https://developer.android.com/reference/android/os/Parcel.html?, flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` |

### Inherited Constants

From [android.os.IBinder](https://developer.android.com/reference/android/os/IBinder.html) `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/IBinder.html#DUMP_TRANSACTION = 1598311760` `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/IBinder.html#FIRST_CALL_TRANSACTION = 1` `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/IBinder.html#FLAG_ONEWAY = 1` `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/IBinder.html#INTERFACE_TRANSACTION = 1598968902` `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/IBinder.html#LAST_CALL_TRANSACTION = 16777215` `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/IBinder.html#LIKE_TRANSACTION = 1598835019` `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/IBinder.html#PING_TRANSACTION = 1599098439` `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/IBinder.html#TWEET_TRANSACTION = 1599362900`

### Inherited functions

From [android.os.Binder](https://developer.android.com/reference/android/os/Binder.html) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/os/Binder.html#attachInterface(android.os.IInterface, java.lang.String)(owner: https://developer.android.com/reference/android/os/IInterface.html!, descriptor: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!)` `native java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` `https://developer.android.com/reference/android/os/Binder.html#clearCallingIdentity()()` `native java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` `https://developer.android.com/reference/android/os/Binder.html#clearCallingWorkSource()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/os/Binder.html#dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[])(fd: https://developer.android.com/reference/java/io/FileDescriptor.html!, fout: https://developer.android.com/reference/java/io/PrintWriter.html!, args: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/os/Binder.html#dumpAsync(java.io.FileDescriptor, java.lang.String[])(fd: https://developer.android.com/reference/java/io/FileDescriptor.html!, args: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!)` `native java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/os/Binder.html#flushPendingCommands()()` `native java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/Binder.html#getCallingPid()()` `native java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/Binder.html#getCallingUid()()` `java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/Binder.html#getCallingUidOrThrow()()` `java-static https://developer.android.com/reference/android/os/UserHandle.html!` `https://developer.android.com/reference/android/os/Binder.html#getCallingUserHandle()()` `native java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/Binder.html#getCallingWorkSourceUid()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` `https://developer.android.com/reference/android/os/Binder.html#getInterfaceDescriptor()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/os/Binder.html#isBinderAlive()()` `java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/os/Binder.html#joinThreadPool()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/os/Binder.html#linkToDeath(android.os.IBinder.DeathRecipient, int)(recipient: https://developer.android.com/reference/android/os/IBinder.DeathRecipient.html!, flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/os/Binder.html#pingBinder()()` `https://developer.android.com/reference/android/os/IInterface.html!` `https://developer.android.com/reference/android/os/Binder.html#queryLocalInterface(java.lang.String)(descriptor: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!)` `native java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/os/Binder.html#restoreCallingIdentity(long)(p: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)` `native java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/os/Binder.html#restoreCallingWorkSource(long)(p: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)` `native java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` `https://developer.android.com/reference/android/os/Binder.html#setCallingWorkSourceUid(int)(p: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/os/Binder.html#transact(int, android.os.Parcel, android.os.Parcel, int)(code: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, data: https://developer.android.com/reference/android/os/Parcel.html!, reply: https://developer.android.com/reference/android/os/Parcel.html!, flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/os/Binder.html#unlinkToDeath(android.os.IBinder.DeathRecipient, int)(recipient: https://developer.android.com/reference/android/os/IBinder.DeathRecipient.html!, flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` From [android.os.IBinder](https://developer.android.com/reference/android/os/IBinder.html) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/os/IBinder.html#addFrozenStateChangeCallback(java.util.concurrent.Executor, android.os.IBinder.FrozenStateChangeCallback)(

executor: https://developer.android.com/reference/java/util/concurrent/Executor.html!,

callback: https://developer.android.com/reference/android/os/IBinder.FrozenStateChangeCallback.html!

)` `java-static https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/os/IBinder.html#getSuggestedMaxIpcSizeBytes()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/os/IBinder.html#removeFrozenStateChangeCallback(android.os.IBinder.FrozenStateChangeCallback)(

callback: https://developer.android.com/reference/android/os/IBinder.FrozenStateChangeCallback.html!

)`

## Public constructors

### BundleListRetriever

```
BundleListRetriever(list: (Mutable)List<Bundle!>!)
```

Creates a `https://developer.android.com/reference/android/os/Binder.html` to send a list of `https://developer.android.com/reference/android/os/Bundle.html` to another process.

## Public functions

### getList

```
java-static fun getList(binder: IBinder!): ImmutableList<Bundle!>!
```

Gets a list of `https://developer.android.com/reference/android/os/Bundle.html` from a `https://developer.android.com/reference/kotlin/androidx/media3/common/BundleListRetriever`.

| Parameters |
|---|---|
| `binder: https://developer.android.com/reference/android/os/IBinder.html!` | A binder interface backed by `https://developer.android.com/reference/kotlin/androidx/media3/common/BundleListRetriever`. |

| Returns |
|---|---|
| `https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://developer.android.com/reference/android/os/Bundle.html!>!` | The list of `https://developer.android.com/reference/android/os/Bundle.html`. |

## Protected functions

### onTransact

```
protected fun onTransact(code: Int, data: Parcel!, reply: Parcel?, flags: Int): Boolean
```

| Throws |
|---|---|
| `https://developer.android.com/reference/android/os/RemoteException.html` |   |