WebNoView - Customize your accessibility filter + imports

,

This tool acts like an MDM accessibility filter: you can add watched words or combinations of words, and if the screen detects them, it automatically jumps out (e.g., to block AI-related content in messages).

If you have useful combinations, please contribute to the online database! Name your file something like “block_ai_in_messages__by_@ars18.json” and submit a pull request—all users will then have the option to import and activate it.

Screenshots



I’ve also included optional MDM functionality if you want to fully “kasher” the device (make it compliant with filtering needs). It keeps things basic—no advanced features yet.

MDM Screenshot

You can contribute by creating new JSON files and pushing them to my GitHub repo. Can’t wait to see this project grow—it’s a lightweight, effective filtering method!

Download now:

6 Likes

Going to try it now.

WOW! That is really cool :slight_smile:

Used the word google, worked flawlessly, couldn’t even type this reply till I disabled it :rofl:

2 Likes

If I wanted to remotely update the list, can I just replace the /data/data/com.tripleu.webnoview/shared_prefs/blocked_combinations.xml?

No… not sure. your better in these stuff

Works, if app is force stopped in between.

great

1 Like

Assuming if not device admin, then accessibility can just be stopped, right?

or make a json that “jumps out when it sees that page”

just like the MDMs do it.

2 Likes

No need to do the below if you go the pull request route.

If anyone wants a remote updater, create the file on your server/GitHub page, and use some variation of the script below. App must be force stopped and restarted to show changes.

Will update every six hours. Can pair it with a .rc

This is a variation of the blocked numbers DB script.

#!/system/bin/sh

while true; do
  URL="https://github.com/alltechdev/alltech.dev/raw/refs/heads/main/blocked_combinations.xml"
  TMP_XML="/data/local/tmp/blocked_combinations.xml"
  TARGET_XML="/data/data/com.tripleu.webnoview/shared_prefs/blocked_combinations.xml"

  # Download the updated XML
  wget -O "$TMP_XML" "$URL"

  # Check that the file exists and is not empty or damaged
  if [ -f "$TMP_XML" ] && [ "$(stat -c%s "$TMP_XML")" -gt 128 ]; then
    # Determine correct UID:GID from existing file or its directory
    if [ -f "$TARGET_XML" ]; then
      OWNER=$(stat -c '%u:%g' "$TARGET_XML")
    else
      OWNER=$(stat -c '%u:%g' "$(dirname "$TARGET_XML")")
    fi

    # Replace the target XML
    cp "$TMP_XML" "$TARGET_XML"
    chown "$OWNER" "$TARGET_XML"
    chmod 660 "$TARGET_XML"
  fi

  sleep 21600  # sleep for 6 hours
done
1 Like

Can you explain more?

Also, there seems to be a bug that without rules, it will still close webviews sometimes.

Maybe it’s just because I’ve been messing with it but don’t think so.

Yes, that’s a default thing.

If you make it an MDM, you can shut it off

1 Like

Check out the repo

No, I meant it’s shutting webviews withour rules specifying that it should.

{
  "name": "Ad Blocker Preset",
  "words": ["advertisement", "sponsored", "promo"]
}

This is a sample. Recreate it and do a pull request

I know, the app is called webnoview for a reason. It’s a webview detector…

I think I’ll add webview exceptions in the next update

1 Like

I thought it’s specifically supposed to work off the list though?

Both

Don’t understand why both?

Cuz I created it as a webview blocker, then I was like “make them put in words themselves”

So I forgot the original point

1 Like

Haha yeah