Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)  
Also in [C Extensions 24](https://developer.android.com/sdkExtensions) Summary: [Ctors](https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder#pubctors) \| [Methods](https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder#inhmethods)

# NetworkSecurityConfig.Builder

*** ** * ** ***


`
public
static
final

class
NetworkSecurityConfig.Builder
`


`

extends https://developer.android.com/reference/java/lang/Object


`

`


`

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.security.net.config.NetworkSecurityConfig.Builder |

<br />

*** ** * ** ***

Builder for creating `NetworkSecurityConfig` objects.

## Summary

| ### Public constructors ||
|---|---|
| ` https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder#Builder()() ` Creates a new, empty Builder. |
| ` https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder#Builder(android.security.net.config.NetworkSecurityConfig)(https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig config) ` Creates a new Builder and initializes its values according to the provided `https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig`. |

| ### Public methods ||
|---|---|
| ` https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig` | ` https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder#build()() ` Creates a `https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig` with the arguments provided to this builder. |
| ` https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder` | ` https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder#setCertificateTransparencyVerificationRequired(boolean)(boolean required) ` Specifies whether certificate transparency verification is required. |
| ` https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder` | ` https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder#setCleartextTrafficPermitted(boolean)(boolean cleartextTrafficPermitted) ` Specifies whether cleartext traffic is permitted. |
| ` https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder` | ` https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder#setDomainEncryptionMode(int)(int mode) ` Specifies the domain encryption mode. |

### Inherited methods

From class `

https://developer.android.com/reference/java/lang/Object

` `


https://developer.android.com/reference/java/lang/Object` `
https://developer.android.com/reference/java/lang/Object#clone()()
`

Creates and returns a copy of this object.


`


boolean` `
https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj)
`

Indicates whether some other object is "equal to" this one.


`


void` `
https://developer.android.com/reference/java/lang/Object#finalize()()
`

Called by the garbage collector on an object when garbage collection
determines that there are no more references to the object.


`


final

https://developer.android.com/reference/java/lang/Class<?>` `
https://developer.android.com/reference/java/lang/Object#getClass()()
`

Returns the runtime class of this `Object`.


`


int` `
https://developer.android.com/reference/java/lang/Object#hashCode()()
`

Returns a hash code value for the object.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#notify()()
`

Wakes up a single thread that is waiting on this object's
monitor.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#notifyAll()()
`

Wakes up all threads that are waiting on this object's monitor.


`


https://developer.android.com/reference/java/lang/String` `
https://developer.android.com/reference/java/lang/Object#toString()()
`

Returns a string representation of the object.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos)
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*, or until a
certain amount of real time has elapsed.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis)
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*, or until a
certain amount of real time has elapsed.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait()()
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*.


## Public constructors

### Builder

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)  
Also in [C Extensions 24](https://developer.android.com/sdkExtensions)

```
public Builder ()
```

Creates a new, empty Builder.

<br />

### Builder

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)  
Also in [C Extensions 24](https://developer.android.com/sdkExtensions)

```
public Builder (NetworkSecurityConfig config)
```

Creates a new Builder and initializes its values according to the provided `https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig`.

<br />

| Parameters ||
|---|---|
| `config` | `NetworkSecurityConfig`: the `https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig` to use when initializing this builder. This value cannot be `null`. <br /> |

## Public methods

### build

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)  
Also in [C Extensions 24](https://developer.android.com/sdkExtensions)

```
public NetworkSecurityConfig build ()
```

Creates a `https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig` with the arguments provided to this builder.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig` | a `https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig` This value cannot be `null`. <br /> |

### setCertificateTransparencyVerificationRequired

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)  
Also in [C Extensions 24](https://developer.android.com/sdkExtensions)

```
public NetworkSecurityConfig.Builder setCertificateTransparencyVerificationRequired (boolean required)
```

Specifies whether certificate transparency verification is required.

<br />

| Parameters ||
|---|---|
| `required` | `boolean`: whether certificate transparency verification is required <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder` | the builder. This value cannot be `null`. <br /> |

### setCleartextTrafficPermitted

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)  
Also in [C Extensions 24](https://developer.android.com/sdkExtensions)

```
public NetworkSecurityConfig.Builder setCleartextTrafficPermitted (boolean cleartextTrafficPermitted)
```

Specifies whether cleartext traffic is permitted.

<br />

| Parameters ||
|---|---|
| `cleartextTrafficPermitted` | `boolean`: whether cleartext traffic is permitted. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder` | the builder. This value cannot be `null`. <br /> |

### setDomainEncryptionMode

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)  
Also in [C Extensions 24](https://developer.android.com/sdkExtensions)

```
public NetworkSecurityConfig.Builder setDomainEncryptionMode (int mode)
```

Specifies the domain encryption mode.

<br />

| Parameters ||
|---|---|
| `mode` | `int`: the domain encryption mode. For possible values see `https://developer.android.com/reference/android/security/NetworkSecurityPolicy#getDomainEncryptionMode(java.lang.String)`. Value is one of the following: - `https://developer.android.com/reference/android/security/NetworkSecurityPolicy#DOMAIN_ENCRYPTION_MODE_UNKNOWN` - `https://developer.android.com/reference/android/security/NetworkSecurityPolicy#DOMAIN_ENCRYPTION_MODE_DISABLED` - `https://developer.android.com/reference/android/security/NetworkSecurityPolicy#DOMAIN_ENCRYPTION_MODE_OPPORTUNISTIC` - `https://developer.android.com/reference/android/security/NetworkSecurityPolicy#DOMAIN_ENCRYPTION_MODE_ENABLED` - `https://developer.android.com/reference/android/security/NetworkSecurityPolicy#DOMAIN_ENCRYPTION_MODE_REQUIRED` |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/security/net/config/NetworkSecurityConfig.Builder` | the builder. This value cannot be `null`. <br /> |