# DnsOptions.StaleDnsOptions


```
public class DnsOptions.StaleDnsOptions
```

<br />

*** ** * ** ***

A class configuring Cronet's stale DNS functionality.

DNS resolution is one of the steps on the critical path to making a URL request, but it can be slow for various reasons (underlying network latency, buffer bloat, packet loss, etc.).

Depending on the use case, it might be worthwhile for an app developer to trade off guaranteed DNS record freshness for better availability of DNS records.

Stale results can include both:

- results returned from the current network's DNS server, but past their time-to-live, and
- results returned from a previous network's DNS server, whether expired or not.

## Summary

| ### Nested types |
|---|
| `public final class https://developer.android.com/develop/connectivity/cronet/reference/org/chromium/net/DnsOptions.StaleDnsOptions.Builder` Builder for `https://developer.android.com/develop/connectivity/cronet/reference/org/chromium/net/DnsOptions.StaleDnsOptions`. |

| ### Public methods |
|---|---|
| `static https://developer.android.com/develop/connectivity/cronet/reference/org/chromium/net/DnsOptions.StaleDnsOptions.Builder` | `https://developer.android.com/develop/connectivity/cronet/reference/org/chromium/net/DnsOptions.StaleDnsOptions#builder()()` |
| `@https://developer.android.com/reference/androidx/annotation/Nullable.html https://developer.android.com/reference/java/lang/Boolean.html` | `https://developer.android.com/develop/connectivity/cronet/reference/org/chromium/net/DnsOptions.StaleDnsOptions#getAllowCrossNetworkUsage()()` |
| `@https://developer.android.com/reference/androidx/annotation/Nullable.html https://developer.android.com/reference/java/lang/Long.html` | `https://developer.android.com/develop/connectivity/cronet/reference/org/chromium/net/DnsOptions.StaleDnsOptions#getFreshLookupTimeoutMillis()()` |
| `@https://developer.android.com/reference/androidx/annotation/Nullable.html https://developer.android.com/reference/java/lang/Long.html` | `https://developer.android.com/develop/connectivity/cronet/reference/org/chromium/net/DnsOptions.StaleDnsOptions#getMaxExpiredDelayMillis()()` |
| `@https://developer.android.com/reference/androidx/annotation/Nullable.html https://developer.android.com/reference/java/lang/Boolean.html` | `https://developer.android.com/develop/connectivity/cronet/reference/org/chromium/net/DnsOptions.StaleDnsOptions#getUseStaleOnNameNotResolved()()` |

## Public methods

### builder

```
public static DnsOptions.StaleDnsOptions.Builder builder()
```

### getAllowCrossNetworkUsage

```
public @Nullable Boolean getAllowCrossNetworkUsage()
```

### getFreshLookupTimeoutMillis

```
public @Nullable Long getFreshLookupTimeoutMillis()
```

### getMaxExpiredDelayMillis

```
public @Nullable Long getMaxExpiredDelayMillis()
```

### getUseStaleOnNameNotResolved

```
public @Nullable Boolean getUseStaleOnNameNotResolved()
```