FocusFlow stacks 12 distinct capabilities that no other free Android app blocker provides together. Here is every feature, explained clearly.
Core enforcement
Most blockers use one mechanism. FocusFlow runs three simultaneously — each one closes the bypass the previous layer leaves open.
Monitors every window change on your Android device. When a blocked app's window is detected, FocusFlow fires within milliseconds and launches up to 5 rapid re-checks at 300 ms intervals to prevent the "race window" bypass. This is the primary enforcement layer.
Routes blocked app traffic into a VPN tunnel that discards all packets. No traffic ever leaves your device to any external server. The VPN is entirely on-device.
Registers FocusFlow as a Device Administrator. This blocks the standard Android Settings → Apps → Uninstall flow. Combined with System Guard, it makes removal during a session effectively impossible without the session PIN.
Unique to FocusFlow
These capabilities exist in FocusFlow and nowhere else in the free or paid Android blocker market.
Natively records every blocked-app attempt — app name, package name, timestamp — via TemptationLogManager in SharedPreferences. Capped at 500 entries. Shows you exactly how often your attention was pulled toward each app.
Every Sunday at 08:00 a push notification delivers your 7-day blocked-attempt totals by app. Example: "Instagram: 18 attempts, TikTok: 14 attempts this week." Behavioral insight, not just timers.
Block an app on a calendar schedule without any active session — e.g., Instagram blocked Mon–Fri 09:00–18:00 automatically. Per-app, per-day-of-week granularity. Enforced directly by the Accessibility Service.
When a blocked app is detected, three simultaneous deterrents fire: screen dimmed to 2% hardware brightness (via WindowManager) plus 70% black overlay; vibration pulse loop (120 ms on / 220 ms off); system notification sound once. Conditions the reflex at the neurological level.
Monitors ACTION_PACKAGE_ADDED broadcasts. Any app installed during an active session is immediately added to the block list and triggers aversive feedback. Closes the "install a competing browser to bypass" loophole — a gap every other blocker leaves open.
Content-level blocking
FocusFlow can target specific content within an app — so you keep access to useful features while the addictive ones are blocked.
Closes the Shorts player within YouTube. Leaves the main feed, search, subscriptions, channel pages, and standard video playback fully accessible. Only the short-form vertical video loop is blocked.
Blocks the Reels feed tab within Instagram. Feed, DMs, Stories, profile, and search remain accessible. Blocks the infinite-scroll Reels loop specifically.
Blocks specific URLs or keywords across Chrome, Firefox, Samsung Internet, and other major Android browsers. Works at the window-title and URL-bar level via the Accessibility Service.
Scheduling engine
FocusFlow has a priority-based scheduling engine with conflict resolution, gap compression, and overrun rebalancing. Choose the mode that fits your workflow.
Each task carries its own allowed-app snapshot. Apps not on the whitelist are blocked during the task. Music for one task, silence for another — configurable per task.
Timed blacklist blocking without a scheduled task. Lock down your phone immediately for a set duration without any task management overhead.
Permanent blacklist active at all times. Specified apps are always blocked with no session required. Useful for apps you want to permanently restrict.
Calendar-based per-app blocking with no active session needed. Define work hours per app, per day of week. Enforced by the Accessibility Service on a native JSON schedule.
Count sub-mode: maximum opens per day. Time-budget sub-mode: maximum minutes per day. Interval sub-mode: minimum cooldown between uses. Three ways to allow limited access instead of full blocking.
Built-in Pomodoro timer (usePomodoro.ts) fully integrated with app blocking. Work and break durations are configurable. App blocking stays active through both work and break phases.
Tamper resistance
FocusFlow anticipates the most common bypass techniques and closes each one at the hardware or native layer.
Automatically restarts the Accessibility Service and VPN tunnel after any device reboot during an active session. Sessions survive reboots.
Sessions use native epoch timestamps validated at the Accessibility Service level. Changing the system clock does not expire the session timer.
LauncherActivity replaces your default home screen. Pressing HOME shows only whitelisted apps in a minimal 4-column grid with a 5-slot dock. The app drawer also respects the blocklist. Long-press uninstall from home screen can be locked.
Device compatibility
FocusFlow's AppBlockerAccessibilityService explicitly handles SystemUI package names for every major Android OEM to ensure power-menu interception and system navigation blocking works correctly.