Privacy Policy — BrainShield

BrainShield Privacy Policy

Last updated: August 16, 2026

App name: BrainShield

Developer: Ciertolab

Package name: com.ciertolab.focusguard

Contact: appattitude911@gmail.com

BrainShield is a personal content-filtering app and home screen that runs almost entirely on your device. This policy explains what the app does and does not do with your data, and why it requests the permissions it does.

What BrainShield does not do

  • BrainShield itself does not collect, transmit, sell, or share your personal data. It has no backend server, no account system, and no cloud sync. Two third-party SDKs — Google AdMob and Firebase Crashlytics — do send device-level data off your device; both are described under Third-party services below. One optional feature (spoken alarms) hands text you have typed to your device's own text-to-speech engine; see Alarms and reminders below.
  • It does not read, store, log, or transmit the content of your screen, your messages, your browsing history, or your DNS queries.
  • It does not track which apps you use, or for how long. BrainShield requests no usage-statistics permission at all.

Information we collect

BrainShield does not collect any personal information. The app runs on your device and does not transmit user data to us, apart from the third-party advertising and crash-reporting services described below.

Permissions and what they're used for

Accessibility Service

BrainShield uses Android's Accessibility API for two purposes, both of which run entirely on your device:

  • Content filtering: detecting when specific screens are open in apps you've chosen to restrict (the Reels tab in Instagram/Facebook, the Shorts player in YouTube, NSFW content in Reddit, or any adult content in web browsers), and performing a "back" action to close them. This requires reading on-screen text and layout identifiers, but only within those specific apps.
  • Heavy Focus Mode app lock: if you choose to lock specific apps while Heavy Focus Mode is on, detecting when a locked app is opened and sending you back to your home screen instead. This only requires knowing which app is currently in the foreground — it does not read that app's on-screen content. Because a locked app can be any app you choose, the Accessibility Service receives foreground-app events from every app, not just the ones listed above, so it can recognize a locked app opening no matter which one it is.
  • Launcher gestures: if you assign a home-screen gesture to "open notifications" or "lock screen", BrainShield asks the Accessibility Service to perform that system action on your behalf. These actions read nothing at all — they are the same two actions the system's own navigation gestures perform.

In both cases, BrainShield does not read, store, or transmit any content it observes beyond what's described above, and nothing is ever written to disk or sent anywhere. On-screen content is only read for the specific content-filtering screens listed above — for every other app, BrainShield only ever knows its package name (i.e. which app it is), never what's displayed inside it.

Home screen (launcher)

BrainShield can optionally replace your device's home screen with a text-only app list. This is entirely opt-in: you are asked once, from BrainShield's settings, and you can switch back to your previous launcher at any time from the same screen. While it is active:

  • Reading your installed apps. To draw the app list, BrainShield asks Android which apps can be launched. It sees each app's package name and display name, and nothing else — no usage data and no contents. It uses Android's narrow <queries> declaration rather than the broad QUERY_ALL_PACKAGES permission. This list never leaves your device.
  • Battery level. Read so the ring around the clock can show it. Displayed only — never stored, never transmitted.
  • Default dialer and camera. BrainShield asks Android which apps handle calls and photos, so the two corner buttons open the right ones.
  • App installs and removals. BrainShield listens for Android's package-added and package-removed broadcasts so the app list stays current. It learns only that a package changed, never anything about why.
  • Uninstalling apps. The "Uninstall" item in the long-press menu hands off to Android's own uninstall confirmation. BrainShield cannot remove anything by itself.

What the launcher remembers — your favorites, hidden apps, custom app names, recent searches, gestures and text size — is stored locally and listed under Data retention below.

Device Admin (uninstall protection)

If you turn on Heavy Focus Mode, BrainShield can optionally ask to become a device administrator using Android's Device Admin API. This is used solely to prevent the app from being uninstalled through the normal Settings flow while Heavy Focus Mode is on, adding friction against an impulsive decision to quit. It is requested only when you explicitly choose "Protect from uninstall" — it is never required to use Heavy Focus Mode or any other feature. It can be turned off at any time by disabling Heavy Focus Mode from inside the app (which removes the device admin automatically) or, if needed, directly from your device's Settings > Security > Device admin apps. BrainShield does not use this permission to lock your device, wipe data, enforce a password policy, or restrict anything other than its own uninstallation.

Display over other apps

BrainShield may request permission to draw over other apps (Android's "SYSTEM_ALERT_WINDOW") for two purely cosmetic, on-device purposes: briefly flashing a "Blocked" message after closing a filtered screen, and showing a short instructional card over Android's own Settings screen to help you find the right toggle while granting Accessibility or Device Admin permissions. This permission is optional — if not granted, both features silently do nothing and the rest of the app works normally. Nothing about what's on your screen is read, stored, or transmitted through this permission.

VPN Service (local, on-device only)

When you enable the adult-content blocking filter, BrainShield starts a local VPN tunnel using Android's VpnService API. This is not a traditional VPN: no traffic is ever sent to a remote server. The tunnel only intercepts DNS lookups (UDP port 53) so that known adult-site domains can be blocked at the resolution stage. Every other kind of network traffic bypasses the tunnel entirely. DNS lookups for domains that are not on the blocklist are forwarded, unmodified, to a public DNS resolver (Cloudflare, 1.1.1.1). Those lookups are not logged or stored by BrainShield.

Network access (blocklist download)

To keep the adult-site blocklist current, BrainShield downloads a public, third-party-maintained list of domains (the StevenBlack/hosts "porn-only" list) over HTTPS. This is a one-way download: the request does not include your DNS queries, browsing history, device identifiers, or any other data. If the download fails, BrainShield uses the last successfully downloaded copy instead.

Alarms and reminders

BrainShield lets you create your own task alarms — "take medicine", "wake up", "start work" — each with a time and a repeat schedule. Everything you type is stored locally on your device and is listed under Data retention below. Creating alarms is entirely optional; the feature is off until you turn it on.

  • Exact alarms. BrainShield asks Android to wake it at the exact minute you chose, using the same alarm-clock permission the system Clock app uses. Without it, Android's power saving could delay a 6:30 alarm by many minutes. This permission lets BrainShield schedule a wake-up; it grants no access to any data.
  • Full-screen alarm. So a ringing alarm can appear over your lock screen and turn the display on, the way an alarm clock is expected to. It only ever shows BrainShield's own alarm screen — it does not unlock your device, and it cannot read anything that was on screen before.
  • Keeping the processor awake. While an alarm is actually sounding, BrainShield holds a short wake lock so the sound is not cut off part-way through. It is released as soon as you answer the alarm, and at most a few minutes later regardless.

Spoken alarms (text-to-speech)

An alarm can either play one of BrainShield's five built-in chimes, or read text aloud so you know what the reminder is for without picking the phone up. If — and only if — you choose the spoken option for a particular alarm, BrainShield passes that alarm's text to your device's own text-to-speech engine when the alarm rings.

That engine is a separate app on your device, not part of BrainShield — on most phones it is Google Speech Services. What it does with the text is governed by that app and its own settings, not by BrainShield: depending on the engine, the voice you have selected, and whether the relevant voice data is installed locally, speech may be synthesized entirely on your device or by contacting that provider's servers. BrainShield has no way to control or observe which of the two happens.

For that reason, please treat the text you type into a spoken alarm the same way you would treat anything you dictate to your phone, and avoid putting sensitive details in it. Alarms that use a chime instead of speech never pass any text to any other app, and the chimes themselves are generated by BrainShield on your device.

Notifications

BrainShield shows a persistent, low-priority notification while the VPN filter is running, as required by Android for any foreground service. This notification does not contain any personal information.

If none of BrainShield's protections are currently active, the app may also show one local notification per day with a short motivational message encouraging you to turn a filter back on. This check runs entirely on your device using Android's WorkManager: it only reads your own locally-stored switch preferences to decide whether to show it, the message is chosen from a fixed, built-in list of 25 messages, and nothing about your device or usage is read, stored, or transmitted to schedule or generate it. You can turn this off at any time from your device's system notification settings for BrainShield.

If you have created task alarms, BrainShield also posts a notification when one rings, and — if you asked for one — a quiet heads-up shortly beforehand. Both are generated on your device from the alarm you created and contain only what you typed into it. Nothing about your device or your usage is read, stored, or transmitted to produce them.

Advertising

BrainShield displays banner ads provided by Google AdMob. As part of serving ads, AdMob may collect and process certain device information (such as your device's Advertising ID / GAID, IP address, and device type) in accordance with Google's Privacy Policy. You can learn more about how Google uses this data at https://policies.google.com/privacy.

You may opt out of interest-based advertising at any time by visiting your device's Google Settings > Ads > Opt out of interest-based ads.

Crash reporting

BrainShield uses Firebase Crashlytics to record a diagnostic report when the app crashes, so the crash can be found and fixed. A report contains the crash itself (a stack trace), your device model, your operating-system version, and a Firebase installation identifier.

A crash report contains none of the content BrainShield observes: no screen contents, no DNS queries, no browsing history, and no list of your installed apps.

Data retention

Everything BrainShield stores is held locally on your device using Android's DataStore, is never transmitted anywhere, and is removed when you uninstall the app. That includes:

  • Which filters are on, and whether Heavy Focus Mode is on
  • Which apps you've chosen to lock, and which apps skip the VPN filter
  • Your water, Pomodoro and habit settings and history
  • Alarms: the task alarms you have created — the name and icon you gave each one, its time and repeat schedule, whether it chimes or speaks, any text you entered for it to read aloud, and which tasks you have marked as done over the past few weeks. This is the only place BrainShield stores text you have written yourself. It stays on your device, and is deleted with the task or when you uninstall the app.
  • Launcher: your favorite apps and their order, apps you've hidden, custom names you've given apps, the last five apps you opened from search, your gesture and text-size choices, and which app each corner shortcut points to

The one-time code used to disable Heavy Focus Mode is generated fresh on your device each time you try to disable it and is never saved by the app. Whether uninstall protection (device admin) is currently active is read directly from Android's own system state each time it's needed, not stored separately by BrainShield.

Third-party services

BrainShield uses the following third-party services, each of which operates under its own privacy policy:

Changes to this policy

If BrainShield's data practices change, this document will be updated accordingly and the "Last updated" date at the top will be revised.

Contact

If you have any questions about this privacy policy, please contact us at:

BrainShield — Developed by Ciertolab
Package: com.ciertolab.focusguard
© 2026 Ciertolab. All rights reserved.