Add app source for F-Droid release (v1.0.6)

Adds the full Android source tree, Gradle wrapper, fastlane store
metadata and the fdroiddata build recipe so F-Droid can build from
source. README gains build instructions and an updated structure tree.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015g6ECVSKcBG8CJPrqC3G5o
This commit is contained in:
Claude
2026-10-06 18:23:12 +00:00
parent 7cd9875c87
commit 4c22ade5cd
89 changed files with 4816 additions and 1 deletions
@@ -0,0 +1,8 @@
• Fixed: IPv6 of all apps was blocked while connected
• Switching servers no longer leaks DNS for a moment
• Blocklist downloads run in the background and never block adding domains
• dnsmasq and unbound blocklist formats
• Private DNS warning shows only when it really interferes
• Back returns to Home, text fields stay above the keyboard
• Quick Settings tile updates instantly
• Monitor filters fit narrow screens
@@ -0,0 +1,31 @@
SparkleDNS encrypts every DNS lookup on your device with DNS-over-HTTPS (RFC 8484) and HTTP/3. It uses Android's VPN API only locally: just DNS requests go into the tunnel, all other traffic takes your normal connection, so speed and battery stay the same.
<b>Servers</b>
<ul>
<li>SkySparkle (default) with HTTP/3, run by the developer</li>
<li>Cloudflare, Google, Quad9, AdGuard, Mullvad</li>
<li>Any custom DoH server, with optional bootstrap IPs and HTTP/3</li>
</ul>
<b>Features</b>
<ul>
<li>One-tap connect, Quick Settings tile, Always-on VPN support</li>
<li>Live monitor: every query with its status and latency, filters, search and one-tap blocking</li>
<li>Per-app rules: apps grouped by category, chosen ones bypass SparkleDNS</li>
<li>Blocklists: your own domains plus hosts, plain domain, AdBlock and dnsmasq lists by URL, HaGeZi Pro++ and TIF one tap away. Subdomains are blocked too, changes apply instantly</li>
<li>Local DNS cache that honours TTLs</li>
<li>Server test showing the protocol (h3 or h2) and latency</li>
</ul>
<b>Privacy</b>
No analytics, no ads, no Google Play Services. The query log lives only in memory and never leaves the device. DNS requests go to the server you choose. The default SkySparkle server is run by the developer under this privacy policy: https://skysparkle.cc/privacy?lang=en
<b>Permissions</b>
<ul>
<li>VPN: a local tunnel that carries DNS only, nothing is routed to a remote VPN</li>
<li>Notifications: connection status with a Disconnect button</li>
<li>Network state: needed by Android's HTTP/3 engine and to detect Private DNS</li>
<li>Installed apps (launcher entries only): to list apps for per-app rules</li>
</ul>
HTTP/3 needs Android 14 or newer; older versions use HTTP/2. If Private DNS in Android settings is set to a specific hostname, Android sends DNS there instead; SparkleDNS shows a warning when that happens.
Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 KiB

@@ -0,0 +1 @@
Encrypted DNS over HTTPS and HTTP/3 with blocklists and per-app rules
@@ -0,0 +1 @@
SparkleDNS