- Kiosk mode: scanning AppConfig.KIOSK_BARCODE toggles Android Lock Task
mode (persisted). As device owner (KioskAdminReceiver) it is a full
lockdown and the app becomes the persistent home screen; otherwise it
falls back to screen pinning. "Salir" and Back-to-exit are disabled
while kiosk mode is on.
- Status strip: app-drawn bar showing only Wi-Fi status and battery
percentage; system bars stay hidden.
- Renderer crash: onRenderProcessGone replaces the WebView and reloads
the last URL; repeated crashes show an error screen instead.
- Error screen: per-cause messages (no Wi-Fi with auto-retry on
reconnect, server unreachable, 5xx, SSL) and an "Ir al inicio"
button; 4xx pages are left to the site.
- Mixed content is never allowed.
- Admin volume-key hold reduced to 3 seconds.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The 7-tap top-left corner gesture passed every tap through to the page,
triggering site UI underneath it. Remove it entirely and open the admin
dialog (exit / toggle soft keyboard) by either:
- holding Volume Up + Volume Down together for 5 seconds; volume keys
are consumed so they never reach the page, or
- scanning AppConfig.ADMIN_BARCODE in Intent output mode, which opens
the dialog instead of being injected into the page.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Scanners in "Intent output" mode deliver barcodes via broadcast, which
nothing in the app received, so scans never reached any field. Add
BroadcastScannerIntegration (Urovo, Newland and other common actions,
configurable in AppConfig) and inject the text into the focused field,
or the first visible search/text field, using the native value setter
plus an input event so React-controlled inputs accept it. Optionally
sends Enter afterwards (SCANNER_SEND_ENTER).
Add a logging-only dispatchKeyEvent pass-through to diagnose why
keystroke-mode scans don't reach the orders search field.
Ignore SamplePage/ and update README and CLAUDE.md.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>