Files
android-kiosk-browser/README.md
T
pluto 6dc1a73d2e feat: MVP implementation - Kiosk Browser
- Fullscreen WebView with immersive mode
- URL whitelist system
- Admin PIN-protected settings
- Boot receiver for auto-launch
- Idle timeout with homepage reset
- Lock Task Mode support
- Material Design 3 UI

Team: Pluto (coordinator), Margaret, Spirit
2026-02-03 09:09:20 -06:00

71 lines
1.5 KiB
Markdown

# Android Kiosk Browser
A customizable locked-down browser for Android kiosk and digital signage deployments.
## Features (MVP)
- **Fullscreen WebView** - Immersive mode, no address bar or browser chrome
- **URL Whitelist** - Only allow configured domains
- **Lock Task Mode** - Disables home/back/recent buttons
- **Admin PIN Exit** - PIN-protected escape from kiosk mode
- **Auto-launch on Boot** - Starts automatically when device powers on
- **Idle Timeout** - Returns to homepage after inactivity
- **Admin Settings** - Configure whitelist, homepage, timeout, PIN
## Tech Stack
- Kotlin
- Android WebView
- Lock Task Mode (API 21+)
- DataStore Preferences
- Material Design 3
## Requirements
- Android 5.0+ (API 21)
- For Lock Task Mode: Device Owner provisioning
## Building
```bash
./gradlew assembleDebug
```
## Device Setup
To enable Lock Task Mode (full kiosk lockdown):
```bash
adb shell dpm set-device-owner farm.hobbs.kioskbrowser/.KioskDeviceAdminReceiver
```
## Admin Access
Triple-tap the top-left corner of the screen to access admin settings.
Default PIN: `1234`
## Configuration
Settings available in Admin panel:
- Homepage URL
- Allowed domains (comma-separated)
- Idle timeout (seconds)
- Admin PIN
## Future Enhancements
- [ ] Remote configuration
- [ ] Multiple profiles
- [ ] Usage analytics
- [ ] Digital signage mode (URL rotation)
- [ ] Session data clearing on idle
## License
MIT License - hobbs.farm
---
*Project managed in Vikunja | Docs on Wiki*