Free & Open Source for Android

Block distracting apps with a physical tap.

Select what to block, tap an NFC tag to start, and put the tag out of reach. The only exit is the tag. No digital bypass, no "just this once."


No subscription. No account. No tracking. Everything runs locally on your device.
  1. 01

    Pick your blocked apps

    Choose any installed app. A safety list permanently excludes your dialer, launcher, settings, and camera so you can never brick your phone.

  2. 02

    Write an NFC tag or generate a QR code

    TapBlok writes its token to any NTAG213 tag in seconds. Prefer QR? Generate one in-app and print it or hide it somewhere inconvenient.

  3. 03

    Start a session and put the tag away

    Tap Start and set the tag somewhere out of arm's reach. When you try to open a blocked app, a wall appears. The only way out is the tag.

  4. 04

    Take a break if needed

    Three 5-minute pauses per session. They reset when the session ends.

Software willpower is weak.

Any app you can bypass with a tap in settings, you will bypass. The decision to stop focusing becomes frictionless.

An NFC tag adds one deliberate physical step. You have to reach for the object that unlocks you. That pause is the whole product.

I use these NTAG215 black adhesive sticker tags — low-profile, stick well, and a pack of 10 is a few dollars. Write your tag with the app, stick it somewhere that forces you to stand up, and you're done.


Unlock

NFC Tag

Write TapBlok's token to any NTAG213 tag. Tap it to start and stop monitoring.

Unlock

QR Code

Generate a QR code in-app and print it. Stash it anywhere that adds real-world distance.

Blocking

Block Any App

Select any launchable app. Critical system apps are permanently off-limits.

Session

Smart Breaks

Three 5-minute pauses per session. Designed for quick checks that won't derail focus.

Reliability

Boot Persistence

If your device restarts during an active session, TapBlok resumes automatically.

Safety

Emergency Override

Lost your tag? A 90-second hold stops the session. Deliberately slow to prevent impulse bypassing.

Awareness

Attempt Counter

See how many times you tried to open a blocked app. Accountability you can't ignore.

Convenience

App Shortcut

Long-press the TapBlok icon to start a session without opening the app.

Trust

Open Source

Every line of code is on GitHub. No black boxes, no telemetry, no ads.


PlatformAndroid 7.0 (API 24) and up
Unlock methodsNFC tag, QR code scan
PermissionsUsage stats, draw over other apps, foreground service
Data collectionNone
InternetNot required
PriceFree, no in-app purchases
Sourcegithub.com/cajdata/TapBlok

No cloud. No account. No ads.

TapBlok does not sync to the cloud, sell usage data, or require a login. It has no analytics, no A/B tests, and no ads.

It runs a foreground service that checks the active app once per second. When it sees a blocked app, it covers the screen. That is the entire feature set.


Why choose TapBlok?

The only free, open-source Android app blocker with physical enforcement. No subscription required — ever.

Feature TapBlok Brick Opal Freedom One Sec
PriceFree$99/device$59.99/yr$3.99/mo$19.99/yr
Android SupportYesNoNoYesYes
NFC Physical UnlockYesYesNoNoNo
QR Code UnlockYesNoNoNoNo
No SubscriptionYesYesNoNoNo
Open SourceYesNoNoNoNo
No Cloud / No TrackingYesNoNoNoNo
Break SystemYesNoNoNoNo
Boot PersistenceYesYesNoNoNo

Comparison based on publicly listed product details as of early 2026. Prices may vary.


  • Yes. No in-app purchases, no subscriptions, no hidden costs. The source code is on GitHub under the Apache 2.0 license.

  • Any NDEF-compatible NFC tag works. Personally, I use these NTAG215 black adhesive sticker tags — they're low-profile, stick well, and the black color blends in wherever you put them. A pack of 10 is a few dollars.

  • There is a 90-second emergency hold for situations where a tag is genuinely lost. The intentionally slow hold makes impulse bypassing hard. A QR code is also always available as a backup unlock method.

  • No. A built-in safety list permanently excludes your dialer, SMS app, settings, camera, and launcher. You cannot accidentally make your phone unusable.

  • Completely. TapBlok stores everything locally on your device using a local Room database. There is no account, no server, no analytics, and no ads. Verify it yourself in the source code.

  • Android 7.0 (API 24) or higher. TapBlok uses the standard Usage Stats and Foreground Service APIs available across all modern Android versions.

  • TapBlok needs two permissions. The app will prompt you for both on first launch, but here are the manual paths:

    1. Usage access: Settings → Apps → Special app access → Usage access → TapBlok → Allow
    2. Display over other apps: Settings → Apps → Special app access → Display over other apps → TapBlok → Allow

    Exact menu names vary slightly between Android 7 and Android 14, but the path is the same.

  • MIUI aggressively kills background services. You need to do all of the following:

    1. Autostart: Settings → Apps → Manage apps → TapBlok → Autostart → On
    2. Battery saver: Settings → Apps → Manage apps → TapBlok → Battery saver → No restrictions
    3. Lock the app: In the Recents screen, long-press the TapBlok card and tap the lock icon to prevent it from being cleared.

    Without Autostart especially, MIUI will kill the monitoring service when your screen turns off.

  • Yes. EMUI and HarmonyOS have their own battery management that kills services. Fix it with:

    1. App launch: Settings → Apps → App launch → TapBlok → Manage manually → enable Auto-launch, Secondary launch, and Run in background
    2. Battery optimization: Settings → Battery → App launch → TapBlok → Don't optimize
  • Samsung's Adaptive Battery can restrict background activity. To prevent this:

    1. Battery optimization: Settings → Device care (or Battery and device care) → Battery → Background usage limits → Never sleeping apps → Add TapBlok
    2. Alternatively: Settings → Apps → TapBlok → Battery → Unrestricted
    1. Battery optimization: Settings → Battery → Battery optimization → All apps → TapBlok → Don't optimize
    2. Auto-launch (ColorOS): Settings → Privacy/Security → App permissions → Auto-start management → TapBlok → On
  • Android 12 introduced stricter foreground service restrictions. If you see a "Restricted" battery state for TapBlok, change it:

    1. Settings → Apps → TapBlok → Battery → select Unrestricted (not Optimized or Restricted)

    The "Optimized" default is usually fine, but "Restricted" will kill the monitoring service.

Ready to actually focus?

Free, open source, and on your phone in under a minute.

Download APK View Source on GitHub