Skip to main content

Content Shield

Overview

Content Shield is an Android-only feature that helps protect you from NSFW content across your entire device. It runs entirely on your phone — nothing is ever uploaded or sent anywhere.

info

Content Shield is under active development. More features are coming soon, including AI/Bot integration and keyholder control.

Requirements

  • Android device — Content Shield is not available on iOS or web
  • Premium subscription — required for real-time filtering
  • Permissions — you'll be asked to grant "Display over other apps" and screen capture permission
  • Re-enable after screen off — Android requires you to re-enable the real-time filter each time your screen turns off

Three Protection Modes

Content Shield has three modes. You can use any combination of them.


1. Real-Time Screen Filter

The real-time filter watches your screen and instantly blurs or blocks any NSFW content it detects — across every app on your device, not just Chastify.

This mode uses Android's MediaProjection to capture your screen. Due to Android's security requirements:

  • You must grant screen capture permission every time you enable the filter
  • The filter is automatically disabled when your phone screen turns off
  • You must re-enable it manually each time your screen turns back on

When turned on, it continuously scans what's on screen and covers detected areas with a mask of your choice:

Mask StyleHow It Looks
Solid BlackFills the area with solid black — best battery life
PixelatedPixelates the area like a mosaic
BlurApplies a blur effect over the area — slightly more battery usage

You can also choose which types of content to filter (e.g. exposed body parts vs. covered) and adjust sensitivity between Low, Medium, and High.

Custom overlay text — You can display short words like "BLOCKED" or "PROTECTED" inside the masked areas.

Browser & App Blocking — If the parental control module is enabled, you can choose to block web browsers and the X.com app whenever MediaProjection permission has not been granted (i.e. when the real-time filter is not running). When you open a blocked browser, you'll see a blocking screen that automatically opens the MediaProjection permission prompt. Once you grant permission, the browser app is automatically relaunched.


2. AI App Blocking

Instead of continuously overlaying your screen, this mode periodically checks what's on screen. If it detects NSFW content, it force-closes the app and blocks it for 30 seconds.

info

Requires Android 11 or newer and the device control accessibility service to be enabled.

This uses less battery than the real-time filter since it only checks periodically rather than continuously. It works across all apps and websites on your device.


3. Family DNS VPN

This mode sets up a local VPN on your device that filters your internet traffic at the DNS level:

  • Blocks porn sites — uses a large blocklist of over 1 million adult domains
  • Blocks ads & trackers — filters ads and tracking domains
  • Forces Google SafeSearch — locks Google search to safe results
warning

DNS filtering does not catch content inside apps that load images/videos directly (like social media feeds). For full protection, use it together with Mode 1 or Mode 2.

Lock during parental control — You can optionally prevent the VPN from being disabled while a parental control session is active.

The stats panel shows you how many DNS queries have been checked and blocked in real time.


Privacy

Everything runs locally on your device:

  • All image detection happens on your phone using a built-in AI model — no images are ever uploaded
  • Allowed DNS queries are forwarded to Cloudflare Family resolvers, with AdGuard Family as fallback if they don't respond. Google search domains are pinned to SafeSearch on-device.
  • VPN — nothing is logged, stored, or transmitted off your device
  • No browsing history, screenshots, or personal data leaves your device

Tips

  • Best battery life: Use Solid Black mask style + AI App Blocking instead of real-time filtering
  • Re-enable after screen off: The real-time filter needs to be turned back on each time your screen turns off — this is an Android limitation