# androidx.photopicker.activity

*** ** * ** ***

## Interfaces

|---|---|
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType` | Represents filter input type accepted by the photo picker. |

## Classes

|---|---|
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` | An `https://developer.android.com/reference/kotlin/androidx/activity/result/contract/ActivityResultContract` to use the [Photo Picker](https://developer.android.com/training/data-storage/shared/photopicker) to select multiple images, videos, or other types of visual media. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia` | An `https://developer.android.com/reference/kotlin/androidx/activity/result/contract/ActivityResultContract` to use the [Photo Picker](https://developer.android.com/training/data-storage/shared/photopicker) to select a single image, video, or other type of visual media. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab` | Represents filter input type accepted by the photo picker. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.MediaCapabilities` | Represents the media capabilities of an application. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.MediaCapabilities.Builder` | A builder for constructing `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.MediaCapabilities` instances. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.SingleMimeType` | `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType` class used to filter a single mime type only when using the photo picker. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest` | A request for a `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` or `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia` Activity Contract. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest.Builder` | A builder for constructing `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest` instances. |

## Objects

|---|---|
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab.AlbumsTab` | `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab` object used to open the picker in Albums tab. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab.PhotosTab` | `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab` object used to open the picker in Photos tab (also the default if no value is provided). |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.ImageAndVideo` | `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType` object used to filter images and video when using the photo picker. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.ImageOnly` | `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType` object used to filter images only when using the photo picker. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VideoOnly` | `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType` object used to filter video only when using the photo picker. |

## Top-level functions summary

|---|---|
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest` | `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/package-summary#PickVisualMediaRequest(androidx.photopicker.activity.PickVisualMedia.VisualMediaType,kotlin.Int,kotlin.Boolean,androidx.photopicker.activity.PickVisualMedia.DefaultTab)( mediaType: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType, maxItems: @https://developer.android.com/reference/kotlin/androidx/annotation/IntRange(from = 2) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, isOrderedSelection: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html, defaultTab: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab )` Creates a request for a `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` or `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia` Activity Contract. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest` | `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/package-summary#PickVisualMediaRequest(kotlin.Long,androidx.photopicker.activity.PickVisualMedia.VisualMediaType,kotlin.Int,kotlin.Boolean,androidx.photopicker.activity.PickVisualMedia.DefaultTab)( accentColor: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html, mediaType: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType, maxItems: @https://developer.android.com/reference/kotlin/androidx/annotation/IntRange(from = 2) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, isOrderedSelection: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html, defaultTab: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab )` Creates a request for a `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` or `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia` Activity Contract. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest` | `@https://developer.android.com/reference/kotlin/androidx/annotation/RequiresApi(value = 33) https://developer.android.com/reference/kotlin/androidx/photopicker/activity/package-summary#PickVisualMediaRequest(androidx.photopicker.activity.PickVisualMedia.MediaCapabilities,androidx.photopicker.activity.PickVisualMedia.VisualMediaType,kotlin.Int,kotlin.Boolean,androidx.photopicker.activity.PickVisualMedia.DefaultTab)( mediaCapabilitiesForTranscoding: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.MediaCapabilities?, mediaType: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType, maxItems: @https://developer.android.com/reference/kotlin/androidx/annotation/IntRange(from = 2) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, isOrderedSelection: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html, defaultTab: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab )` Creates a request for a `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` or `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia` Activity Contract. |
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest` | `@https://developer.android.com/reference/kotlin/androidx/annotation/RequiresApi(value = 33) https://developer.android.com/reference/kotlin/androidx/photopicker/activity/package-summary#PickVisualMediaRequest(androidx.photopicker.activity.PickVisualMedia.MediaCapabilities,kotlin.Long,androidx.photopicker.activity.PickVisualMedia.VisualMediaType,kotlin.Int,kotlin.Boolean,androidx.photopicker.activity.PickVisualMedia.DefaultTab)( mediaCapabilitiesForTranscoding: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.MediaCapabilities?, accentColor: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html, mediaType: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType, maxItems: @https://developer.android.com/reference/kotlin/androidx/annotation/IntRange(from = 2) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, isOrderedSelection: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html, defaultTab: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab )` Creates a request for a `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` or `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia` Activity Contract. |

## Top-level functions

### PickVisualMediaRequest

Artifact: [androidx.photopicker:photopicker-activity](https://developer.android.com/jetpack/androidx/releases/photopicker) [View Source](https://cs.android.com/search?q=file:androidx/photopicker/activity/PickVisualMediaRequest.kt+function:PickVisualMediaRequest) Added in [1.0.0-alpha03](https://developer.android.com/jetpack/androidx/releases/photopicker#1.0.0-alpha03)

```
fun PickVisualMediaRequest(
    mediaType: PickVisualMedia.VisualMediaType = ImageAndVideo,
    maxItems: @IntRange(from = 2) Int = PickMultipleVisualMedia.getMaxItems(),
    isOrderedSelection: Boolean = false,
    defaultTab: PickVisualMedia.DefaultTab = DefaultTab.PhotosTab
): PickVisualMediaRequest
```

Creates a request for a `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` or `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia` Activity Contract.

| Parameters |
|---|---|
| `mediaType: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType = ImageAndVideo` | type to go into the PickVisualMediaRequest |
| `maxItems: @https://developer.android.com/reference/kotlin/androidx/annotation/IntRange(from = 2) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html = PickMultipleVisualMedia.getMaxItems()` | limit the number of selectable items when using `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` |
| `isOrderedSelection: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html = false` | whether the user can control the order of selected media when using `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` (defaults to false) |
| `defaultTab: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab = DefaultTab.PhotosTab` | the tab to initially open the picker in (defaults to `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab.PhotosTab`). Note that the support for this parameter was added in API level 35 / R ext 12 and applies the default behavior for older versions. Also see `https://developer.android.com/reference/android/provider/MediaStore.html#EXTRA_PICK_IMAGES_LAUNCH_TAB` |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest` | a PickVisualMediaRequest that contains the given input |

### PickVisualMediaRequest

Artifact: [androidx.photopicker:photopicker-activity](https://developer.android.com/jetpack/androidx/releases/photopicker) [View Source](https://cs.android.com/search?q=file:androidx/photopicker/activity/PickVisualMediaRequest.kt+function:PickVisualMediaRequest) Added in [1.0.0-alpha03](https://developer.android.com/jetpack/androidx/releases/photopicker#1.0.0-alpha03)

```
fun PickVisualMediaRequest(
    accentColor: Long,
    mediaType: PickVisualMedia.VisualMediaType = ImageAndVideo,
    maxItems: @IntRange(from = 2) Int = PickMultipleVisualMedia.getMaxItems(),
    isOrderedSelection: Boolean = false,
    defaultTab: PickVisualMedia.DefaultTab = DefaultTab.PhotosTab
): PickVisualMediaRequest
```

Creates a request for a `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` or `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia` Activity Contract.

| Parameters |
|---|---|
| `accentColor: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` | color long to customize picker accent color. Note that the support for this parameter was added in API level 35 / R ext 12 and applies the default behavior for older versions. Also see `https://developer.android.com/reference/android/provider/MediaStore.html#EXTRA_PICK_IMAGES_ACCENT_COLOR` |
| `mediaType: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType = ImageAndVideo` | type to go into the PickVisualMediaRequest |
| `maxItems: @https://developer.android.com/reference/kotlin/androidx/annotation/IntRange(from = 2) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html = PickMultipleVisualMedia.getMaxItems()` | limit the number of selectable items when using `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` |
| `isOrderedSelection: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html = false` | whether the user can control the order of selected media when using `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` (defaults to false) |
| `defaultTab: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab = DefaultTab.PhotosTab` | the tab to initially open the picker in (defaults to `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab.PhotosTab`). Note that the support for this parameter was added in API level 35 / R ext 12 and applies the default behavior for older versions. Also see `https://developer.android.com/reference/android/provider/MediaStore.html#EXTRA_PICK_IMAGES_LAUNCH_TAB` |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest` | a PickVisualMediaRequest that contains the given input |

### PickVisualMediaRequest

Artifact: [androidx.photopicker:photopicker-activity](https://developer.android.com/jetpack/androidx/releases/photopicker) [View Source](https://cs.android.com/search?q=file:androidx/photopicker/activity/PickVisualMediaRequest.kt+function:PickVisualMediaRequest) Added in [1.0.0-alpha03](https://developer.android.com/jetpack/androidx/releases/photopicker#1.0.0-alpha03)

```
@RequiresApi(value = 33)
fun PickVisualMediaRequest(
    mediaCapabilitiesForTranscoding: PickVisualMedia.MediaCapabilities?,
    mediaType: PickVisualMedia.VisualMediaType = ImageAndVideo,
    maxItems: @IntRange(from = 2) Int = PickMultipleVisualMedia.getMaxItems(),
    isOrderedSelection: Boolean = false,
    defaultTab: PickVisualMedia.DefaultTab = DefaultTab.PhotosTab
): PickVisualMediaRequest
```

Creates a request for a `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` or `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia` Activity Contract.

| Parameters |
|---|---|
| `mediaCapabilitiesForTranscoding: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.MediaCapabilities?` | the `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.MediaCapabilities` that the application can handle. |
| `mediaType: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType = ImageAndVideo` | type to go into the PickVisualMediaRequest |
| `maxItems: @https://developer.android.com/reference/kotlin/androidx/annotation/IntRange(from = 2) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html = PickMultipleVisualMedia.getMaxItems()` | limit the number of selectable items when using `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` |
| `isOrderedSelection: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html = false` | whether the user can control the order of selected media when using `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` (defaults to false) |
| `defaultTab: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab = DefaultTab.PhotosTab` | the tab to initially open the picker in (defaults to `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab.PhotosTab`) |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest` | a PickVisualMediaRequest that contains the given input |

### PickVisualMediaRequest

Artifact: [androidx.photopicker:photopicker-activity](https://developer.android.com/jetpack/androidx/releases/photopicker) [View Source](https://cs.android.com/search?q=file:androidx/photopicker/activity/PickVisualMediaRequest.kt+function:PickVisualMediaRequest) Added in [1.0.0-alpha03](https://developer.android.com/jetpack/androidx/releases/photopicker#1.0.0-alpha03)

```
@RequiresApi(value = 33)
fun PickVisualMediaRequest(
    mediaCapabilitiesForTranscoding: PickVisualMedia.MediaCapabilities?,
    accentColor: Long,
    mediaType: PickVisualMedia.VisualMediaType = ImageAndVideo,
    maxItems: @IntRange(from = 2) Int = PickMultipleVisualMedia.getMaxItems(),
    isOrderedSelection: Boolean = false,
    defaultTab: PickVisualMedia.DefaultTab = DefaultTab.PhotosTab
): PickVisualMediaRequest
```

Creates a request for a `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` or `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia` Activity Contract.

| Parameters |
|---|---|
| `mediaCapabilitiesForTranscoding: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.MediaCapabilities?` | the `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.MediaCapabilities` that the application can handle. |
| `accentColor: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` | color long to customize picker accent color |
| `mediaType: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.VisualMediaType = ImageAndVideo` | type to go into the PickVisualMediaRequest |
| `maxItems: @https://developer.android.com/reference/kotlin/androidx/annotation/IntRange(from = 2) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html = PickMultipleVisualMedia.getMaxItems()` | limit the number of selectable items when using `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` |
| `isOrderedSelection: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html = false` | whether the user can control the order of selected media when using `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickMultipleVisualMedia` (defaults to false) |
| `defaultTab: https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab = DefaultTab.PhotosTab` | the tab to initially open the picker in (defaults to `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMedia.DefaultTab.PhotosTab`) |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/photopicker/activity/PickVisualMediaRequest` | a PickVisualMediaRequest that contains the given input |