Android offers a variety of ways to present content to a user. To provide a user experience
that's consistent with the rest of the platform, it's usually best to build a native app that
incorporates framework-provided experiences, such as
Android App Links or search.
Additionally, you can use Google Play-based experiences, such as
App Actions, where Google Play services is available. However, some
apps might need increased control over the UI. In this case, a
WebView
is a good option for displaying
trusted first-party content.
Figure 1 illustrates how you can provide access to your web pages from a browser or your own
Android app. The WebView
framework lets you specify viewport and style properties that
make your web pages appear at the proper size and scale on all screen configurations for all major
web browsers. You can define an interface between your Android app and your web pages that lets
JavaScript in the web pages call APIs in your app, providing Android APIs to your web-based
application.
However, don't develop an Android app as a means to view your website. Rather, the web pages you embed in your app must be designed specifically for that environment.
Alternatives to WebView
Although WebView
objects provide increased control over the UI, there are
alternatives that might provide similar functionality with less configuration, faster loading and
performance, improved privacy protections, and access to the browser's cookies.
Consider using these alternatives to WebView
if your app falls into the following
use cases:
- If you want to send users to a mobile site, build a progressive web app (PWA).
- If you want to display third-party web content, send an intent to installed web browsers.
- If you want to avoid leaving your app to open the browser, or you want to customize the browser's UI, use Custom Tabs.
Additional resources
To develop web pages for Android-powered devices using WebView
objects, see the
following documents:
- Build web apps in WebView
- Manage WebView objects
- Support different screens in web apps
- Debug web apps
- Best practices for web apps
- Opt-in to WebView Beta