Skip to content
App builder tools

Android WebView App Builder

Turn a website into a full-screen Android Studio WebView project — icon, splash, permissions and all.

App details

The page the app opens. Use HTTPS — Android blocks plain HTTP by default.

Reverse-domain style. Permanent once published.

Whole number, increased on every Play upload.

Icon and splash

Your image is resized on a canvas inside this tab. It is never uploaded to Toolspea or anywhere else.

Uses the Android 12+ splash screen API rather than a fake waiting screen.

Window and navigation

Off by default: the WebView runs full screen with no address bar, so your own site header is the only header.

Comma separated. Your main domain is always treated as internal.

WebView features

Enable only what your site uses — each toggle can add a permission.

No Android object is exposed to the page, so this does not grant device access.

localStorage and sessionStorage.

Needed for some embedded logins and payment frames.

Implements the file chooser so HTML file inputs work.

Uses Android's DownloadManager — no storage permission required.

Adds location permissions to the manifest.

Adds the CAMERA permission.

Adds the RECORD_AUDIO permission.

Advanced

Only for a site that genuinely has no HTTPS. Scoped to your hosts, never enabled globally.

Lets your https:// links open the app.

Permissions this build will request

  • Internetandroid.permission.INTERNETRequired to load the website.
  • Network stateandroid.permission.ACCESS_NETWORK_STATEDetects when the device is offline so the app can show its own error screen.

What is Android WebView App Builder?

Toolspea Android WebView App Builder creates a configurable Android Studio WebView project that opens a selected website inside a full-screen Android application. You enter a URL, app name, package name and version, upload an icon, choose WebView features and permissions, then download a Kotlin/Gradle project that compiles in Android Studio. It generates source code, not a compiled APK.

What is an Android WebView app?

An Android WebView app is a native Android application whose entire user interface is a single WebView component pointed at a website. Android draws the window, the launcher icon and the task entry; the page inside supplies every screen. Because WebView is the same rendering engine Chrome uses on Android, whatever works in mobile Chrome works in the app.

The value is packaging rather than rendering: a home screen icon, a full-screen window with no address bar, control over the back button, an offline screen you designed, and a route into the Play Store. The cost is that you inherit your website's performance and layout, good or bad.

How to convert a website into an Android app

Check the site is responsive at 360 CSS pixels wide and served over HTTPS. Enter the URL, an app name and a package name such as com.yourcompany.yourapp. Upload a square icon of at least 512×512 — 1024×1024 gives the crispest adaptive layers. Turn on only the WebView features your site actually uses, then download the project.

In Android Studio choose Open, select the unzipped folder, and let it generate the Gradle wrapper and download dependencies. Press Run with a device or emulator attached. To change the URL later, edit startUrl at the top of MainActivity.kt.

Full-screen WebView apps

By default the generated app has no toolbar, no address bar and no native header — the WebView fills the window from edge to edge, and window insets are applied so content is never hidden behind the status bar or the gesture navigation area. Your own site header becomes the app's header.

If you would rather have a native chrome, switch the toolbar on and you get a Material toolbar with the app title. It is off by default because most sites already have navigation and a second header wastes vertical space on a phone.

How package names work

The package name, called the application ID, is the permanent identity of your app on a device and in Google Play. It is dot-separated, conventionally the reverse of a domain you control: example.com becomes com.example.appname. Each segment must start with a letter and contain only letters, digits and underscores. Spaces are invalid, uppercase is discouraged, and Java keywords cannot be used as segments.

You cannot change the application ID after publishing — a new ID is a new listing with no reviews or installs. Choose it carefully before the first upload.

Adding an app icon

Upload one square image and the builder produces every launcher asset: legacy square and round mipmaps for five densities, plus an adaptive icon made of a foreground layer inset into the 72dp safe circle and a solid background colour. Adaptive icons are what let Android show your icon as a circle on one launcher and a squircle on another without clipping the logo.

Leave breathing room around the artwork in your source file, keep the logo centred, and avoid text smaller than about 10% of the canvas height — it disappears at 48dp.

Adding a splash screen

The project uses the Android 12+ splash screen API through the AndroidX core-splashscreen library, so the icon appears on your background colour the instant the process starts and hands over to the WebView as soon as it is ready. That is the correct modern pattern.

You can add a short hold if you want the brand moment to register, but there is deliberately no multi-second option: an artificial wait makes an app feel slower, and Play reviewers notice.

File uploads and downloads

HTML file inputs need an Activity to pick the file, which a bare WebView does not provide. The generated app implements onShowFileChooser using the modern Activity Result API and the system file chooser, so <input type="file"> works, including multiple selection and the camera when the page asks for it and camera permission is enabled.

Downloads are handled with a DownloadListener that hands the URL to Android's DownloadManager, writing into the app's own external files directory. That path needs no storage permission at all, which keeps the permission list short — nothing broad is requested just in case.

WebView security

The generated Activity registers no JavaScript bridge, so the loaded page cannot call Android APIs. File access and content access are disabled, universal access from file URLs is never enabled, and mixed content is blocked so an HTTPS page cannot pull in HTTP subresources.

Most importantly, onReceivedSslError is not overridden. Sample code across the web calls handler.proceed() there, which silently accepts forged certificates and defeats HTTPS entirely; Google Play rejects apps that do it. The platform default cancels the load, and that is what this project keeps.

Cleartext HTTP is blocked unless you explicitly opt in, and when you do, the network security config permits it only for the hosts you listed rather than for every domain the app can reach.

How to use it

  1. 1Enter the website URL you want the app to open.
  2. 2Set the app name, Android package name (application ID) and version.
  3. 3Upload a square icon and configure the splash screen.
  4. 4Choose WebView features — JavaScript, file upload, downloads, pull to refresh, external link handling.
  5. 5Review the permission list and the readiness checks.
  6. 6Download the Android Studio project ZIP and open it in Android Studio to build.

Features

  • Kotlin + AndroidX + Gradle Kotlin DSL project that opens in Android Studio
  • Full-screen WebView with no toolbar and no address bar by default
  • Optional native toolbar with title, back, refresh and home
  • Adaptive launcher icons (foreground layer + background colour) for every density
  • Android 12+ splash screen API rather than a fake waiting Activity
  • HTML file upload, download handling, full-screen video and pull to refresh
  • Intelligent back navigation with optional exit confirmation
  • Same-domain links stay in the app; unrelated domains open in the system browser
  • Branded offline screen with retry instead of the raw WebView error page
  • Secure WebView defaults: no JavaScript bridge, no file:// access, mixed content blocked, SSL errors never bypassed
  • Permissions added only when you enable the feature that needs them
  • Optional Android App Links intent filter for deep links

When people use it

Shipping an internal tool

Wrap a responsive internal dashboard so staff get a launcher icon and a full-screen view instead of a browser tab.

A store presence for a web app

Start from a working WebView project and add native value on top before submitting to Google Play.

Client demos

Show a site running as an app on a real device without spending a day on Android boilerplate.

Learning Android WebView

Read a complete, security-reviewed WebView Activity instead of piecing one together from old forum answers.

Known limits

  • Toolspea generates source code. It does not compile APK or AAB files, because that needs a build machine with the Android SDK — no fake binaries are offered.
  • A website that is not responsive will look cramped in a WebView; the builder cannot fix your site's layout.
  • Google Play rejects apps that add no value beyond a repackaged website, so publishing is never guaranteed.
  • Only wrap sites you own or are licensed to distribute.

Android WebView App Builder questions

Related tools

Hand-picked hubs, guides and companion tools related to this page.

Last reviewed 2026-08-15. Browse the full directory.