🛠️ Technical Documentation
This section details the architecture and security hardening of the MotoKiosk application.
🏗️ Architecture
- Core: Android WebView (Custom Engine).
- UI Pattern: Single Activity with View Overlays (CardViews).
- Styling: Material 3 "Slate-Dark" design language.
🔒 Security Hardening (Kiosk Mode)
- Screen Pinning: The app utilizes
startLockTask() to prevent hardware button and gesture navigation.
- Smart Exit Flow: To prevent the Android OS from triggering the lock-screen upon exiting a pinned task, MotoKiosk follows this sequence:
- Trigger
CATEGORY_HOME Intent (Switches to Desktop).
- 300ms Delay (Allows OS to focus the Launcher).
stopLockTask() & finishAndRemoveTask().
📂 Data & Configuration
- Preferences: Settings are stored in
SharedPreferences (admin_password, target_url).
- Icons: Custom vector assets are used for navigation:
ic_calendar: Event schedule.
ic_law: Paragraph icon (§) for legal waivers.
Build Path: app/build/outputs/apk/debug/app-debug.apk