Android lets you build on the power of the web within your app. So, you can benefit from the flexibility and efficiency of displaying certain types of content.

## Embedding content using`WebView`

The[`WebView`](https://developer.android.com/reference/android/webkit/WebView)API gives you access to the capabilities of a mini-browser for displaying web content within your app. This lets you provide web-powered experiences as a core or supporting part within your app, as seen in**Figure 1**.
![Android app open to Google Play, with the primary web view highlighted in a red box](https://developer.android.com/static/develop/ui/views/layout/webapps/EmbedpageWebView.png)![Android app open with supporting text inside a red box.](https://developer.android.com/static/develop/ui/views/layout/webapps/EmbedpageKids1.png)**Figure 1.**Web content embedded within the app with \`WebView\` objects as primary (left) and supporting content (right).

## What`WebView`can do

You can do the following with`WebView`in your app:

- **Embed web** : A`WebView`is integrated into an app's user interface as a component, much like a button or text field.

- **Load content** :`WebView`can load web content from various sources:

  - Remote URLs: It can fetch and display web pages from the internet, just like a regular browser.
  - Local files: It can load HTML, CSS, and JavaScript files stored within the app's resources.
  - Dynamically generated content: The app can generate HTML content dynamically and provide it to the`WebView`.
- **Render** :`WebView`uses its browser engine to parse and render the HTML, CSS, and JavaScript, displaying the resulting web page within its designated area in the app's UI.

- **Execute JavaScript** :`WebView`can execute JavaScript code within the context of the loaded web page. This allows for dynamic interactions and updates within the`WebView`.

- **Interact with your app** : This is where`WebView`gets more powerful. It enables bidirectional communication between the web page and the app.

  - **JavaScript to app code** : JavaScript code running in a`WebView`can call host APIs of the app, enabling access to device features like camera, GPS, or sensors.

  - **App code to JavaScript** : The app can also inject JavaScript code into a`WebView`, manipulate the web page's content, or respond to events triggered by the web page.

## How`WebView`differs from a browser

A`WebView`is a highly custom component that provides the core functionality of a window into the web. Unlike a browser, which provides a navigation bar and other user interface elements to navigate the web more broadly, the overall experience of a`WebView`is shaped by your app's design and purpose.

To better understand how`WebView`differs from standard browsers, see the following explanations:

**UI** : A`WebView`is used for displaying web content and doesn't have its own header or UI like most other common browsers, for example, a home button, address bar, or settings menu.

**Features**: Many browsers have built-in features to augment the browsing experience, such as bookmarks, permissions, or history.

**Updates** : Because Android`WebView`is a system service on Android, updates are pushed and integrated into the apps automatically on a monthly basis. Browsers rely on their corresponding app updates and then for end users to apply the update on their devices.

## Get started

For information on how to use`WebView`in your app, see the document[Build web apps in`WebView`](https://developer.android.com/guide/webapps/webview).

### Additional resources

To develop web pages for Android-powered devices using`WebView`objects or Custom Tabs, see the following documents:

- [Build web apps in`WebView`](https://developer.android.com/guide/webapps/webview)
- [Manage`WebView`objects](https://developer.android.com/guide/webapps/managing-webview)
- [Support different screens in web apps](https://developer.android.com/guide/webapps/targeting)
- [Debug web apps](https://developer.android.com/guide/webapps/debugging)
- [Best practices for web apps](https://developer.android.com/guide/webapps/best-practices)
- [Opt-in to`WebView`Beta](https://play.google.com/apps/testing/com.google.android.webview)
- [In-app browsing using embedded web](https://developer.android.com/develop/ui/views/layout/webapps/in-app-browsing-embedded-web)
- [Overview of Android Custom Tabs](https://developer.android.com/develop/ui/views/layout/webapps/overview-of-android-custom-tabs)