No description
Find a file
Akash kumar singh 60b5f43d24 Add Voice Unlock: speak a sentence to open locked apps
Android app lock for students' speaking practice. When a locked app
opens, a lock screen shows a sentence at the student's level; the app
opens only after it is read aloud with enough words matching.

- AppMonitorService (foreground, specialUse) polls UsageStatsManager
  and opens LockActivity via the SYSTEM_ALERT_WINDOW background-start
  exemption; restarts on boot and app update
- SentenceMatcher: word-level edit distance with contraction, number,
  homophone and one-letter spelling tolerance; per-word feedback
- SpeechController wraps Android SpeechRecognizer (offline first,
  online fallback); Listen button reads the sentence with TTS
- Setup checklist for permissions; settings for level, match
  threshold, unlock window, accent and apps to lock
- 120 built-in sentences across three levels
- Unit tests for the matcher and a Maestro flow for the lock cycle;
  debug builds add a typed-input shortcut that R8 strips from release

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-19 02:32:28 +07:00
.maestro Add Voice Unlock: speak a sentence to open locked apps 2026-09-19 02:32:28 +07:00
app Add Voice Unlock: speak a sentence to open locked apps 2026-09-19 02:32:28 +07:00
gradle Add Voice Unlock: speak a sentence to open locked apps 2026-09-19 02:32:28 +07:00
.gitignore Add Voice Unlock: speak a sentence to open locked apps 2026-09-19 02:32:28 +07:00
build.gradle.kts Add Voice Unlock: speak a sentence to open locked apps 2026-09-19 02:32:28 +07:00
gradle.properties Add Voice Unlock: speak a sentence to open locked apps 2026-09-19 02:32:28 +07:00
gradlew Add Voice Unlock: speak a sentence to open locked apps 2026-09-19 02:32:28 +07:00
gradlew.bat Add Voice Unlock: speak a sentence to open locked apps 2026-09-19 02:32:28 +07:00
settings.gradle.kts Add Voice Unlock: speak a sentence to open locked apps 2026-09-19 02:32:28 +07:00