# SpeculativeLoadingConfig.Builder

Artifact: [androidx.webkit:webkit](https://developer.android.com/jetpack/androidx/releases/webkit) [View Source](https://cs.android.com/search?q=file:androidx/webkit/SpeculativeLoadingConfig.java+class:androidx.webkit.SpeculativeLoadingConfig.Builder) Added in [1.13.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.13.0) Deprecated in [1.17.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.17.0)

*** ** * ** ***


```
@Profile.ExperimentalUrlPrefetch
public final class SpeculativeLoadingConfig.Builder
```

<br />

*** ** * ** ***

> [!CAUTION]
> **This class is deprecated.**   
> Deprecated in Java

## Summary

| ### Public constructors |
|---|
| `[Builder](https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#Builder())()` **This method is deprecated.** Deprecated in Java |

| ### Public methods |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig` | `@https://developer.android.com/reference/androidx/webkit/Profile.ExperimentalUrlPrefetch [build](https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#build())()` **This method is deprecated.** Deprecated in Java |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder` | `[setMaxPrefetches](https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#setMaxPrefetches(int))(@https://developer.android.com/reference/androidx/annotation/IntRange(from = 1) int max)` **This method is deprecated.** Deprecated in Java |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder` | `[setMaxPrerenders](https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#setMaxPrerenders(int))(@https://developer.android.com/reference/androidx/annotation/IntRange(from = 1) int max)` **This method is deprecated.** Deprecated in Java |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder` | `[setPrefetchTtlSeconds](https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#setPrefetchTtlSeconds(int))(@https://developer.android.com/reference/androidx/annotation/IntRange(from = 1) int ttlSeconds)` **This method is deprecated.** Deprecated in Java |

## Public constructors

### Builder

Added in [1.13.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.13.0) Deprecated in [1.17.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.17.0)

```
public [Builder](https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#Builder())()
```

> [!CAUTION]
> **This method is deprecated.**   
> Deprecated in Java

## Public methods

### build

Added in [1.13.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.13.0) Deprecated in [1.17.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.17.0)

```
@Profile.ExperimentalUrlPrefetch
public @NonNull SpeculativeLoadingConfig [build](https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#build())()
```

> [!CAUTION]
> **This method is deprecated.**   
> Deprecated in Java

Builds a new `https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig` instance.

This method creates a new `https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig` object using the parameters that have been set in this builder.

| Returns |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig` | A new `https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig` instance. |

### setMaxPrefetches

Added in [1.13.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.13.0) Deprecated in [1.17.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.17.0)

```
public @NonNull SpeculativeLoadingConfig.Builder [setMaxPrefetches](https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#setMaxPrefetches(int))(@IntRange(from = 1) int max)
```

> [!CAUTION]
> **This method is deprecated.**   
> Deprecated in Java

Sets the maximum number of allowed prefetches. This value limits the number of prefetch data that can live in the cache. The WebView's internal maximum limit may override this value.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/IntRange(from = 1) int max` | The maximum number of prefetches. Must be a positive integer. |

| Returns |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder` | This builder instance for method chaining. |

| Throws |
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException.html` | If `max` is less than 1. |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#build()` |   |

### setMaxPrerenders

Added in [1.14.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.14.0) Deprecated in [1.17.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.17.0)

```
public @NonNull SpeculativeLoadingConfig.Builder [setMaxPrerenders](https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#setMaxPrerenders(int))(@IntRange(from = 1) int max)
```

> [!CAUTION]
> **This method is deprecated.**   
> Deprecated in Java

Sets the maximum number of allowed prerenders. The WebView's internal maximum limit may override this value.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/IntRange(from = 1) int max` | The maximum number of prerenders. Must be a positive integer. |

| Returns |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder` | This builder instance for method chaining. |

| Throws |
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException.html` | If `max` is less than 1. |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#build()` |   |

### setPrefetchTtlSeconds

Added in [1.13.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.13.0) Deprecated in [1.17.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.17.0)

```
public @NonNull SpeculativeLoadingConfig.Builder [setPrefetchTtlSeconds](https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#setPrefetchTtlSeconds(int))(@IntRange(from = 1) int ttlSeconds)
```

> [!CAUTION]
> **This method is deprecated.**   
> Deprecated in Java

Sets the Time-to-Live (TTL) in seconds for prefetched data.

This value determines how long prefetched data will be considered valid before it is refreshed.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/IntRange(from = 1) int ttlSeconds` | The TTL value in seconds. Must be a positive integer. |

| Returns |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder` | This builder instance for method chaining. |

| Throws |
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException.html` | If `ttlSeconds` is less than 1. |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/webkit/SpeculativeLoadingConfig.Builder#build()` |   |