6dc1a73d2e
- 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
71 lines
1.5 KiB
Markdown
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*
|