Webview Kiosk

Turn your Android device into a locked-down web page in fullscreen mode.
Repo:IzzyOnDroid
AppID:uk.nktnet.webviewkiosk
Author:Khiet Tam Nguyen
License:AGPL-3.0-or-later
Donation:
InRepoSince:2025-09-17
LastRepoUpdate:2026-09-19
LastAppUpdate:2026-09-19
LastVersion:0.26.20
Categories:Internet
APK source:Github
icon Webview Kiosk is a free and open-source Android application for secure, kiosk-style web browsing.

It can function as digital signage, a kid-friendly restricted browser, an immersive web reader, an interactive sign-up form, a home assistant dashboard, or simply a wall clock.

Designed for small businesses and device owners who are looking for a simple and standalone Kiosk solution.

Key Features

Core / Standalone

- Lock Task Mode (Pin): prevent access to your device's home screen, apps and status bar
- Secure Settings: configurations are protected by biometrics, device credentials or custom password
- URL Filtering: use regular expressions to control web access through a URL blacklist and whitelist
- Export/Import: backup and restore user settings in Base64 or JSON format
- Local files: display images, audio, video, HTML or PDF (using Mozilla's PDF.js) in kiosk mode
- Default Launcher: use as the home app and launch other apps in lock task mode (kiosk)
- JS Scripts: supports NFC (Near Field Communication), Eruda console, Dark Reader and custom scripts

Remote Management / Enterprise

1. MQTT (Message Queuing Telemetry Transport)

- Monitor events, update settings, execute commands and build custom automations using the API
- Requires an MQTT broker (e.g. Mosquitto, EMQX, HiveMQ, or their HomeAssistant integrations)

2. UnifiedPush

- Send commands and update settings via a decentralised push notification system
- Requires a distributor application (e.g. sunup, ntfy, gCompat-UP)

3. Managed Configurations (App Restrictions)

- For fully-managed (company-owned) devices, settings can be remotely configured via an MDM/EMM provider
- Advanced users using a device policy controller (e.g. Test DPC or OwnDroid) can also enforce configurations locally

For more details, visit https://webviewkiosk.nktnet.uk

Permissions

- INTERNET: for general web browsing
- ACCESS_NETWORK_STATE: to refresh web pages when network connectivity is restored
- CAMERA: (optional) for use with web apps that requires photo/video capture
- RECORD_AUDIO: (optional) for use with web apps that requires audio capture
- MODIFY_AUDIO_SETTINGS: for routing audio (microphone will not work without this)
- ACCESS_FINE_LOCATION: (optional) for web apps that needs precise geolocation
- ACCESS_COARSE_LOCATION: (optional) for web apps that needs approximate geolocation
- NFC: for reading and writing NFC tags using the device's NFC hardware
- VIBRATE: (optional) for navigator.vibrate(pattern) when enabled
- INSTALL_SHORTCUT: for adding home screen launcher shortcuts on Android 7.1 and below
- QUERY_ALL_PACKAGES: to find launchable apps, device owners and lock task packages
- POST_NOTIFICATIONS: (optional) for lock task mode (kiosk) launches and MQTT
- FOREGROUND_SERVICE: for persistent notification and management with lock task and MQTT
- FOREGROUND_SERVICE_SPECIAL_USE: provides a return mechanism for opening apps in kiosk
- USE_BIOMETRIC: replaces USE_FINGERPRINT from Android 9.0 onwards
- USE_FINGERPRINT: use fingerprint hardware when accessing settings or unlocking kiosk
- WAKE_LOCK: to optionally wake the screen when receiving MQTT commands
- WRITE_EXTERNAL_STORAGE: for downloading files in Android 9.0 and below
- API (Dhizuku): to request shared device owner privileges

Contact

Questions/Feature Requests

- https://github.com/nktnet1/webview-kiosk/discussions

Bugs/Issues

- https://github.com/nktnet1/webview-kiosk/issues

Other

- support@webviewkiosk.nktnet.uk

Alternatives

- Fully Kiosk Browser Lockdown (feature-rich, but not a f

WhatsNew:

## Changes

- feat: add opt-in navigator.vibrate(pattern) support
- feat: add per-site Mutual TLS client certificate support using Android KeyChain
- feat: proxy local file over web asset loader (appassets.androidplatform.net)

Hint: This app is available in both, F-Droid Main and IzzyOnDroid repos.
Download Metadata Website Source Issues ChangeLog
001.phone-default.png 002.phone-locked.png 003.phone-kiosk-control-panel.png 004.phone-page-blocked.png 005.phone-settings.png 006.phone-settings-mqtt.png
While you can download the APKs here directly, you should preferably use an F-Droid client so the app stays up-to-date on your device. Some clients have this repo enabled by default, e.g. Neo Store, Droid-ify, or, of course, the IzzyOnDroid client by Sunil. With others (like the official client) you'll have to add this repo manually (see the hint on top of the package list for how to do that).

Packages

Version 0.26.20 (2026-09-19) verified help icon

Android Versions:
  • Target: 17.0
  • MinVer: 5.0
  • ABIs: arm64-v8a, armeabi-v7a, x86, x86_64
Permissions: help icon
Malware-Check:Passed help icon
13 Libraries detected: help icon

Download (3.6 M)

Version 0.26.19 (2026-09-10) verified help icon

Version 0.26.18 (2026-07-22) verified help icon