nfcGuard
Block distracting apps with NFC tags. Focus, screen time, digital wellbeing.
Andrei Gulin Habit Tracker System
Screenshots
Description
Place an NFC tag somewhere inconvenient: another room, a drawer, the far end of the house. Then make yourself walk to it before you can scroll.
Most app blockers are one tap away from being switched off. This one isn't. Unlocking means getting up, or deleting the app.
Accessibility Service disclosure:
nfcGuard uses the Android AccessibilityService API for a single purpose: to detect which app is currently in the foreground, so that an app you have chosen to block can be closed when you open it. This is required because some devices do not reliably report the foreground app by any other means.
The service is declared so that it cannot retrieve window content, and it listens only for window-state-change events. It is technically incapable of reading what is on your screen, and it never does. Before it is turned on, nfcGuard shows a consent screen explaining this, with ALLOW and DON'T ALLOW buttons.
nfcGuard collects, stores and transmits no personal or sensitive user data of any kind, and works entirely offline.
The service is optional on most phones. With it off, nfcGuard instead shows a block screen on top of the blocked app.
Fully offline: no ads, no tracking, no accounts, no sign-up. Open source under the MIT license.
Features:
* Block mode - block the specific apps that distract you
* Allow mode - block everything except the essentials
* Per-day schedules that activate and deactivate on their own
* Multiple modes, each with its own NFC tag
* Timed unlocks, capped by a limit you set in advance
* Home screen widget for switching modes without opening the app
* Emergency reset with a configurable cooldown
* Config export and import in JSON or YAML
Requires a phone with NFC and any inexpensive NTAG sticker, or anything else with an NFC chip.
Source code: https://github.com/Andebugulin/nfcGuard
What’s new (1.3.2)
* Now in 13 more languages, including German, Spanish, French, Russian, Japanese and Chinese.
* Fully offline: the internet permission is gone, nfcGuard cannot reach the network.
* Schedules can run overnight, e.g. 22:00 - 07:00, and end at 00:00.
* A schedule whose end was missed on phones that cut background apps now ends on time.
* UNTIL times now show the schedule actually running.
Versions
Permissions
What the app asks the system for. Android only grants sensitive access after you confirm it.
- Display over other appsDraw content on top of other apps.
- PACKAGE_USAGE_STATS
- NFCExchange data via near field communication.
- Foreground serviceKeep running in the background, visible in the status bar.
- Run at startupStart automatically after the device is switched on.
- REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
- Prevent sleepingKeep the device from going to sleep.
- FOREGROUND_SERVICE_SPECIAL_USE
Show 5 more permissions
- Exact alarmsTrigger actions at a precise time.
- USE_EXACT_ALARM
- NotificationsShow notifications.
- KILL_BACKGROUND_PROCESSES
- nfcguard.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Comments