Skip to content

Repository files navigation

Universal App Lock

CI Every-Commit Release Security Release Latest build Flutter License

Universal App Lock is an independent app locker for Android, built with Flutter and native Kotlin. It is an independent rebuild and modification inspired by the discontinued Samsung S Secure application.

Not affiliated with Samsung. Universal App Lock is not affiliated with, sponsored by, or endorsed by Samsung Electronics. Samsung and S Secure are trademarks of their respective owners. This is not an official Samsung product.


⚠️ Project status: Phase 5 — scaffold only

App locking does not work yet. This repository currently contains a clean, buildable Flutter + Kotlin scaffold. The following are intentionally not implemented and are planned for later phases:

  • foreground-app monitoring
  • lock overlay enforcement
  • PIN / biometric authentication
  • protected-app selection & secure storage
  • boot handling
  • release automation (APK/AAB/signing)

See docs/FEATURES.md for the implemented-vs-planned matrix.

Why not just repair Samsung S Secure?

A full read-only forensic analysis of Samsung S Secure v5.0.10 (see docs/FORENSIC-ANALYSIS.md) found that S Secure is a privileged Samsung system dashboard, not a self-contained app locker:

  • The actual app-lock enforcement lives in a separate privileged system package, com.samsung.android.applock, plus the One UI framework.
  • S Secure depends on system/signature permissions (WRITE_SECURE_SETTINGS, INTERACT_ACROSS_USERS, MANAGE_USERS, CHANGE_COMPONENT_ENABLED_STATE) that a third-party app cannot obtain, and on a Samsung-only install gate.

Therefore the APK cannot be patched into a functional universal locker. Universal App Lock is instead a fresh Flutter + Kotlin implementation that uses only third-party-safe Android APIs, informed by the S Secure UX/feature model.

Technology

  • Flutter / Dart — UI, navigation, dashboard, settings, About/Credits, orchestration.
  • Kotlin / Android — the security-critical platform layer (monitoring, overlay, authentication, storage, boot) — planned, currently interface stubs.
  • Platform channels — a single, versioned MethodChannel/EventChannel bridge between Dart and Kotlin. See docs/ARCHITECTURE.md.

Security-sensitive logic stays native; Dart never implements it. See docs/SECURITY.md.

Repository structure

android/            Android host + Kotlin platform layer (stubs)
lib/                Flutter/Dart application
  core/             constants, errors, models, utils
  features/         app_lock (dashboard), authentication, apps, settings, about
  services/         platform bridge (PlatformService) + channel constants
test/               widget/unit tests
docs/               ARCHITECTURE, FEATURES, SECURITY, DEVELOPMENT, CREDITS, FORENSIC-ANALYSIS
icons/icon.png      master launcher icon (source of truth)

Local-only working directories (original/, decoded/, jadx/, rebuilt/, signed/, keys/, logs/, backups/) hold the proprietary APK and forensic/build artifacts and are git-ignored — they are never committed.

Development requirements

  • Flutter stable (developed on 3.47.x / Dart 3.13.x)
  • Android SDK (build-tools 35.x, platform-tools/adb)
  • JDK 17 for the Gradle build (flutter config --jdk-dir /usr/lib/jvm/java-17-openjdk-amd64)

See docs/DEVELOPMENT.md for details.

Build & run

flutter pub get
flutter analyze
flutter test
flutter build apk --debug
# install on a connected device:
adb install -r build/app/outputs/flutter-apk/app-debug.apk

Downloads & releases

Builds are produced entirely by GitHub Actions — no local build is required.

  • Every push to main publishes a signed-for-testing prerelease (universal + per-ABI APKs, AAB, checksums, changelog, build metadata) with a unique build-v<version>-<run> tag.
  • Pushing a v<X.Y.Z> tag publishes a production release signed with the production key.

Get artifacts:

See docs/RELEASES.md for the versioning model and asset naming, and docs/DEVELOPMENT.md for the release/signing workflow.

Credits & attribution

Developed by Jaydatt KhodaveIT IS UNIQUE OFFICIAL. Full attribution in docs/CREDITS.md.

Universal App Lock is an independent rebuild and modification inspired by the discontinued Samsung S Secure application. It is not affiliated with, sponsored by, or endorsed by Samsung Electronics.

About

Universal App Lock — a modern, privacy-focused Android app locker independently rebuilt and inspired by the discontinued Samsung S Secure application.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages