> [!WARNING] > > Google's new developer verification requirements for 2026-2027 will > mean the end for side-loading and many alternate stores and projects > such as F-Droid and New Pipe. > > For more information, please refer to the following sources: > > - F-Droid: https://f-droid.org/en/2025/10/28/sideloading.html > - Keep Android Open: https://keepandroidopen.org > - Video context: https://www.youtube.com/watch?v=wRvqdLsnsKY # Webview Kiosk > Docs: https://webviewkiosk.nktnet.uk
[Get it on GitHub](https://github.com/nktnet1/webview-kiosk/releases) [Get it on Obtainium](https://apps.obtainium.imranr.dev/redirect?r=obtainium://add/https://github.com/nktnet1/webview-kiosk) [Get it on Google Play](https://play.google.com/store/apps/details?id=com.nktnet.webview_kiosk) [Get it on F-Droid](https://f-droid.org/packages/uk.nktnet.webviewkiosk) [Get it on IzzyOnDroid](https://apt.izzysoft.de/fdroid/index/apk/uk.nktnet.webviewkiosk)
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 - 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 configured via an MDM/EMM provider - Advanced users with a device policy controller (e.g. Test DPC or OwnDroid) can also enforce configurations locally ## Permissions - INTERNET: for general web browsing - ACCESS_NETWORK_STATE: to refresh web pages when network connectivity is restored - ACCESS_LOCAL_NETWORK: (optional, Android 17+) for web apps that access the local network - 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 ## Installation Notes From [v0.17.0](https://github.com/nktnet1/webview-kiosk/releases/tag/v0.17.0), Google Play's [automatic protection](https://support.google.com/googleplay/android-developer/answer/10183279) has been intentionally disabled to allow installations from the Aurora Store. From [v0.15.7](https://github.com/nktnet1/webview-kiosk/releases/tag/v0.15.7), the package name for all installation sources except the Google Play Store has changed from `com.nktnet.webview_kiosk` to `uk.nktnet.webviewkiosk`. ## Contact - support@webviewkiosk.nktnet.uk ## License This project is licensed under the GNU Affero General Public License v3.0 or later. See the [LICENSE](./LICENSE) file for details. ## Screenshots
Phone Screenshot 1  Phone Screenshot 2  Phone Screenshot 3  Phone Screenshot 4  Phone Screenshot 5  Phone Screenshot 6
## Alternatives - [Fully Kiosk Browser Lockdown](https://www.fully-kiosk.com) (feature-rich, but not a free kiosk solution) - [Web Kiosk](https://github.com/screenlite/web-kiosk) (by Screenlite) - [FreeKiosk](https://github.com/RushB-fr/freekiosk) (by Rushb-fr) - [Kite AOS](https://github.com/andrew-malitchuk/kite-aos) (by andrew-malitchuk)