- Intercepts screen unpin and requires system credential verification (fingerprint / PIN / pattern)
- Goes directly to home screen after verification โ no lock screen
- Only protects apps in LSPosed scope; other apps unpin normally
- Optional: suppress the system "To unpin this app..." toast
- Debug logging toggle
- Android 15+ (API 35+)
- LSPosed / LSPosed Fork
- Root (Magisk / KernelSU / APatch)
- Download and install APK from Releases
- Enable module in LSPosed Manager
- Select scope:
- System Framework (android) โ required
- Apps to protect โ select as needed
- Reboot
- Open PinGuard and confirm the green status indicator
- Open a protected app and enable Screen Pinning
- When trying to unpin, the system credential dialog appears
- Successful verification โ unpins and returns to home
- Failed / cancelled โ stays pinned
| Option | Description |
|---|---|
| Enable Protection | Master switch; disabling allows normal unpin |
| Hide Exit Toast | Suppress the system "To unpin..." toast |
| Debug Log | Output verbose logs to logcat (filter: PinGuard) |
User attempts to unpin
โ
โผ
stopSystemLockTaskMode() โ Hooked
โ
โผ
Is app in protected list? โโNoโโโถ Allow normally
โYes
โผ
Broadcast to pinned app
โ
โผ
Show KeyguardManager credential dialog
โ
โโโโโดโโโโ
โผ โผ
Pass Fail
โ โ
โผ โผ
Manually Stay
dismantle pinned
LockTask
internals
โ
โผ
Return to home
(no lock screen)
- ImagePicker (้ๅพ) โ Minimal image viewer with screen pinning support
This project is open-sourced under the MIT License. Issues and PRs are welcome.