# WebViewAssetLoader.Builder

# WebViewAssetLoader.Builder

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

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/androidx/webkit/WebViewAssetLoader.Builder "View this page in Java")

<br />

```
class WebViewAssetLoader.Builder
```

<br />

*** ** * ** ***

A builder class for constructing[WebViewAssetLoader](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader)objects.

## Summary

|                                              ### Public constructors                                               |
|--------------------------------------------------------------------------------------------------------------------|
| [Builder](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder#Builder())`()` |

|                                                  ### Public functions                                                   |
|-------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [WebViewAssetLoader.Builder](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder) | [addPathHandler](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder#addPathHandler(java.lang.String,androidx.webkit.WebViewAssetLoader.PathHandler))`(path: `[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)`, handler: `[WebViewAssetLoader.PathHandler](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.PathHandler)`)` Register a[PathHandler](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.PathHandler)for a specific path. |
| [WebViewAssetLoader](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader)                 | [build](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder#build())`()` Build and return a[WebViewAssetLoader](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader)object.                                                                                                                                                                                                                                                                                                                                 |
| [WebViewAssetLoader.Builder](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder) | [setDomain](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder#setDomain(java.lang.String))`(domain: `[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)`)` Set the domain under which app assets can be accessed.                                                                                                                                                                                                                                                                                        |
| [WebViewAssetLoader.Builder](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder) | [setHttpAllowed](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder#setHttpAllowed(boolean))`(httpAllowed: `[Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)`)` Allow using the HTTP scheme in addition to HTTPS.                                                                                                                                                                                                                                                                                     |

## Public constructors

### Builder

Added in 1.1.0  

```
Builder()
```  

## Public functions

### addPathHandler

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

```
fun addPathHandler(path: String, handler: WebViewAssetLoader.PathHandler): WebViewAssetLoader.Builder
```

Register a[PathHandler](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.PathHandler)for a specific path.

The path should start and end with a`"/"`and it shouldn't collide with a real web path.

`WebViewAssetLoader`will try`PathHandlers`in the order they're registered, and will use whichever is the first to return a non-`null`[WebResourceResponse](https://developer.android.com/reference/android/webkit/WebResourceResponse.html).  

|                                                                 Parameters                                                                 |
|--------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------|
| `path: `[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)                                                  | the prefix path where this handler should be register.                                                                                           |
| `handler: `[WebViewAssetLoader.PathHandler](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.PathHandler) | [PathHandler](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.PathHandler)that handles requests for this path. |

|                                                         Returns                                                         |
|-------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------|
| [WebViewAssetLoader.Builder](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder) | [Builder](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder)object. |

|                                                        Throws                                                         |
|-----------------------------------------------------------------------------------------------------------------------|-------------------------|
| [java.lang.IllegalArgumentException](https://developer.android.com/reference/java/lang/IllegalArgumentException.html) | if the path is invalid. |

### build

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

```
fun build(): WebViewAssetLoader
```

Build and return a[WebViewAssetLoader](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader)object.  

|                                                 Returns                                                 |
|---------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|
| [WebViewAssetLoader](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader) | immutable[WebViewAssetLoader](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader)object. |

### setDomain

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

```
fun setDomain(domain: String): WebViewAssetLoader.Builder
```

Set the domain under which app assets can be accessed. The default domain is`"appassets.androidplatform.net"`  

|                                         Parameters                                          |
|---------------------------------------------------------------------------------------------|--------------------------------------------------|
| `domain: `[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) | the domain on which app assets should be hosted. |

|                                                         Returns                                                         |
|-------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------|
| [WebViewAssetLoader.Builder](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder) | [Builder](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder)object. |

### setHttpAllowed

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

```
fun setHttpAllowed(httpAllowed: Boolean): WebViewAssetLoader.Builder
```

Allow using the HTTP scheme in addition to HTTPS. The default is to not allow HTTP.  

|                                                         Returns                                                         |
|-------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------|
| [WebViewAssetLoader.Builder](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder) | [Builder](https://developer.android.com/reference/kotlin/androidx/webkit/WebViewAssetLoader.Builder)object. |