# RetryPolicy.RetryConfig.Builder

Artifact: [androidx.camera:camera-core](https://developer.android.com/jetpack/androidx/releases/camera) [View Source](https://cs.android.com/search?q=file:androidx/camera/core/RetryPolicy.java+class:androidx.camera.core.RetryPolicy.RetryConfig.Builder) Added in [1.4.0](https://developer.android.com/jetpack/androidx/releases/camera#1.4.0)

*** ** * ** ***


```
@ExperimentalRetryPolicy
class RetryPolicy.RetryConfig.Builder
```

<br />

*** ** * ** ***

A builder class for creating and customizing `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig` objects.

While predefined configs like `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig#DEFAULT_DELAY_RETRY()` are recommended for typical recovery scenarios, this builder allows for fine-tuned control when specific requirements necessitate a different approach.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig.Builder#Builder()()` |

| ### Public functions |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig` | `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig.Builder#build()()` Builds the customized `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig` object. |
| `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig.Builder` | `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig.Builder#setRetryDelayInMillis(long)(timeoutInMillis: @https://developer.android.com/reference/kotlin/androidx/annotation/IntRange(from = 100, to = 2000) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)` Sets the retry delay in milliseconds. |
| `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig.Builder` | `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig.Builder#setShouldRetry(boolean)(shouldRetry: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)` Specifies whether a retry should be attempted. |

## Public constructors

### Builder

Added in 1.4.0

```
Builder()
```

## Public functions

### build

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

```
fun build(): RetryPolicy.RetryConfig
```

Builds the customized `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig` object.

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig` | The configured RetryConfig. |

### setRetryDelayInMillis

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

```
fun setRetryDelayInMillis(timeoutInMillis: @IntRange(from = 100, to = 2000) Long): RetryPolicy.RetryConfig.Builder
```

Sets the retry delay in milliseconds.

If set, the initialization will be retried after the specified delay. For optimal results, the delay should be within the range of 100 to 2000 milliseconds. This aligns with lab testing, which suggests this range provides sufficient recovery time for most common camera issues while minimizing latency.

| Parameters |
|---|---|
| `timeoutInMillis: @https://developer.android.com/reference/kotlin/androidx/annotation/IntRange(from = 100, to = 2000) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` | The delay in milliseconds. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig.Builder` | `this` for method chaining. |

### setShouldRetry

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

```
fun setShouldRetry(shouldRetry: Boolean): RetryPolicy.RetryConfig.Builder
```

Specifies whether a retry should be attempted.

| Parameters |
|---|---|
| `shouldRetry: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | If true (the default), initialization will be retried. If false, initialization will not be retried. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/camera/core/RetryPolicy.RetryConfig.Builder` | `this` for method chaining. |