pass-with-high-score/blockads-android

▲ 66 stars today★ 2,487⑂ 146

Block ads system-wide on Android using local VPN-based DNS filtering. No root needed. No data collection.

About pass-with-high-score/blockads-android

pass-with-high-score/blockads-android is an open-source project on GitHub, mainly written in Kotlin. Block ads system-wide on Android using local VPN-based DNS filtering. No root needed. No data collection. It currently holds 2,487 stars and 146 forks with 68 open issues, and was last pushed on 2026-11-01 (repository created 2026-02-10).

Project Overview

Git Homed tracks it on the Today's Trending board, currently at rank #74 with 66 new stars today.

GitHub Repository Details

Repository pass-with-high-score/blockads-android · default branch main · size 1121141 KB · watchers 13 · source: GitHub REST API and repository README

README

BlockAds

BlockAds is a free, open-source ad blocker for Android.

It blocks ads, trackers, and malware system-wide using local VPN-based DNS filtering — no root required, no data collection.

Built with Jetpack Compose and Material 3 for a modern, premium experience.





Download

https://github.com/pass-with-high-score/blockads-android/blob/HEAD/Get it on F-Droid

https://github.com/pass-with-high-score/blockads-android/blob/HEAD/Get it at IzzyOnDroid

---

Screenshots

---

Features

---

Community

Join our community: Reddit Telegram

Sponsor

If you enjoy BlockAds, consider supporting the project! Your sponsorship helps us maintain and improve the app.

Sponsor

Build Instructions

Requirements

Steps

[!TIP]
Historical versions of the Go binary (tunnel.aar) were committed in the past before being moved to GitHub Releases. To avoid downloading ~1.2GB of old binaries, use blobless clone (--filter=blob:limit=1m) to download only ~20MB.

1. Clone the repository:

   git clone --filter=blob:limit=1m https://github.com/pass-with-high-score/blockads-android.git
   cd blockads-android
   
(Or for a shallow clone: git clone --depth=1 https://github.com/pass-with-high-score/blockads-android.git)

2. (Optional) Build the Go tunnel AAR/JAR from source (with Android 15 16KB page size support):

   ./scripts/build_tunnel.sh
   # Or
   ./gradlew -Ptunnel.source=local buildGoTunnel
   
Note: This is completely optional. Gradle automatically resolves a prebuilt, checksum-pinned tunnel.aar from GitHub Releases by default. You do not need Go or NDK unless you are modifying Go code in tunnel/. See docs/TUNNEL.md.

3. Open the project in Android Studio

4. Sync Gradle and run the app on a device or emulator

5. Build from command line:

   ./gradlew assembleDebug
   ./gradlew bundleRelease   # requires signing key
   

---

How It Works

BlockAds routes DNS queries locally either through a VpnService (Vpn Mode) or via iptables redirection (Root Proxy Mode). These queries are matched against loaded filter lists using a memory-efficient Trie data structure. Matching queries are blocked locally, while all other traffic passes through normally — no data leaves your device.

When HTTPS Filtering is enabled, a userspace TCP/IP stack (gVisor netstack via tun2socks) terminates each TCP/UDP flow in Go, looks up the owning app UID via Android's ConnectivityManager.getConnectionOwnerUid(), and only MITMs flows from selected browsers. Cert-pinned apps and the 284-domain curated passthrough list bypass MITM cleanly. Cosmetic CSS rules and EasyList ##+js(…) / AdGuard #%#//scriptlet(…) scriptlets are injected into HTML responses via a tiny in-memory local asset host.

---

License

This project is licensed under the GNU General Public License v3.0. You are free to use, modify, and distribute it under the terms of the license. See the full LICENSE file for details.

---

Credits

---

Contributing

Pull requests and issue reports are welcome. Help us improve BlockAds!

Help us translate BlockAds

Want to see BlockAds in your language? Open an issue or submit a PR with your translations.

---

Star History

Star History Chart

GitHub Stars & Activity

2,487Stars
146Forks
68Open issues
KotlinLanguage

GitHub Popularity

GitHub stars2,487
Forks146
Open issues68
Primary languageKotlin
LicenseGPL-3.0
Stars gained today66
Created2026-02-10
Last pushed2026-11-01

Trending History

Daily boardrank #74 · ▲ 66 stars

Related GitHub Projects

1

bannedbook / fanqiang

Kotlin★ 56,313⑂ 8,722▲ 224 stars
→
2

deniscerri / ytdlnis

Kotlin★ 10,946⑂ 513▲ 36 stars
→
3

CYQawa / YunX

Kotlin★ 6,356⑂ 330▲ 113 stars
→
4

kushagrasinghx / BitChord

Kotlin★ 5,408⑂ 554▲ 168 stars
→
5

realidkroo / Mochy-Music

Kotlin★ 549⑂ 37▲ 64 stars
→
6

public-apis / public-apis

Python★ 495,702⑂ 55,345▲ 1,311 stars
→
7

obra / superpowers

Shell★ 311,516⑂ 27,719▲ 647 stars
→
8

mattpocock / skills

Shell★ 310,749⑂ 26,134▲ 858 stars
→

More Trending Repositories