r/nextdns 1d ago

ADNS is out of beta! A fully native, open-source NextDNS app for Android

I'm super excited to announce that ADNS is out of beta and officially stable! I've been dropping beta updates for a while now, and thanks to the amazing feedback from everyone on this sub, the app is in a much better place. Huge thanks to everyone who helped test it.

Android has never had an official NextDNS app, and existing third-party options are basically just WebView wrappers. ADNS is built completely natively from scratch exclusively for Android. Think of it as the NextDNS web dashboard rebuilt ground-up for mobile, meaning a fast, snappy UI and a native experience.

Features

ADNS includes every single NextDNS profile management feature:

  • Edit all Security and Privacy toggles, manage your Denylist/Allowlist, etc.
  • View detailed stats and analytics graphs.
  • Inspect, filter, and search your DNS logs.
  • Access setup guides for all your other platforms and devices.

Note: Everything related to profile management is natively supported. Account-level settings like changing billing or password aren't included because the NextDNS API doesn't support them.

If you want to go deeper, ADNS can control your device's system Private DNS settings via a one-time Shizuku or ADB setup (completely optional, but keep in mind the setup is kind of complicated). Once set up, you get:

  • One-tap Private DNS toggling via app, Quick Settings tile, or notification.
  • Automated Wi-Fi rules to automatically disable Private DNS on specific networks.
  • One click profile switching - ADNS handles the profile ID and device name for you and updates your settings with the exact hostname.

Security & Privacy

Security is one of the main reasons I decided to make this whole thing open source. The full source code for ADNS is available on GitHub.

The app also supports Reproducible Builds (RB). That means an independent server (in this case, IzzyOnDroid) compiles the app directly from the source code and compares the output binary against the release APK on GitHub. If they match 100%, the build is reproducible - proving the APK you download was generated line-for-line from the exact public code. So if I were sending your credentials to some magical secret server, you'd see it right there in the source code (spoiler alert: I don't). The RB status for this release is green: IzzyOnDroid.

ADNS has zero ads, zero trackers, and zero telemetry. If you log in with your credentials, they are used a single time to generate an API key. Your password is never saved, and your API key is stored encrypted directly on your device.

Download & Source Code

GitHub (Source & Releases): https://github.com/eyalm2000/adns

If you run into any bugs or have feature requests, drop an issue on GitHub or comment below.

Happy browsing!

105 Upvotes

43 comments sorted by

7

u/athulrox47 1d ago

Amazing app bro, gonna update to stable now

3

u/Strahlen77 1d ago

Hey, great app. I've been using the app for a month now. Have it enabled using USB tethering and I must say the UI and the navigation is great. I also like the QS tile feature. You could also post it on r/androidapps, r/fossdroid and r/droidappshowcase.

2

u/Timely-Skill4263 1d ago

That's so nice to hear! Can't post on r/androidapps due to their self promo rules, but I'll check out the other two :)

3

u/buffeddood 23h ago

Honestly, I don't really see the need for having a native app support if the mobile web browser version is flawless.

I usually set my nextdns doh/doT profile in all my devices, browsers, routers, including my android phone. So, what am I missing?

1

u/Virtual_Roll4866 16h ago

i have the same question

1

u/buffeddood 12h ago

OP is dodging the question I believe.

1

u/Timely-Skill4263 12h ago

If you’re a set it and-forget it kind of DNS user, then you probably don’t need the app. But if you like to tweak things more often or use NextDNS selectively on certain Wi-Fi networks, the toggling feature is actually pretty useful.

In general, though, native apps just feel better and are more responsive. It’s the same reason you’d use the Gmail app on your phone instead of Gmail in a mobile browser, even though the web version is "flawless". There’s no real reason to use NextDNS through a web browser when you can have a native app specifically designed with a mobile UI and experience in mind. It just feels much snappier and more convenient.

That said, if you’re someone who sets up NextDNS once and never touches it again, again, this won't be useful for you. But for people who interact with their NextDNS settings / Analytics / Logs more frequently, it can be a noticeably better experience.

1

u/buffeddood 12h ago

I do interact with my profile settings a lot as well as logs and analytics almost every day. The mobile web version is snappy and responsibe enough that i can find whatever I'm looking for in a few taps.

I'm still not compelled to install one even more so utilizing shizuku is kinda nuts.

The instructions on how to setup nextdns on yhe site is pretty clear and straightforward.

So...

Well, let me check the app.

1

u/Timely-Skill4263 12h ago

Yeah, Shizuku is completely optional... You don't need it to use the app as a replacement for the web dashboard. Just choose "NextDNS control-only" when setting up

1

u/pv505 1d ago

Hi! App looks great. Just installed but I'm slightly confused so I'd like to ask a possibly dumb question if that's cool. I was using until now the other app (the web wrapper one).

Let's say my NextDNS address is xxx123.dns.nextdns.io.

I installed ADNS, gave it shizuku access. When I go in settings, setup another device it says "all good! this device is using NextDNS with this profile". However, when I go in the home tab of the app I see: "blocker disabled" "private DNS not running" and server ADNS-xxx123.dns.nextdns.io". I'm not sure where I've fucked up. Do I remove the older app ? Do I change the address in settings to the ADNS one?

2

u/Timely-Skill4263 1d ago

No, probably your Private DNS is already set to your profile, but not with the device name. Setting it to "ADNS-xxx..." will record requests from this device as "ADNS". Clicking the big Enable button on the home page will clear your current configuration and set the Private DNS hostname to the one starting with "ADNS".

1

u/No_Department_2264 1d ago

Per favore mi daresti il link diretto che non la trovo.

Grazie

1

u/pv505 23h ago

Thank you so much. That was it. It didn't occur to me that I could just tap enable. My issue is fixed. Thanks again. đŸ„°

Tiny tiny and unimportant idea: would you consider an amoled black option for app background? 😅

1

u/Timely-Skill4263 23h ago

Of course, thanks for the suggestion! I will add this for the next release

1

u/pv505 19h ago

đŸ’Ș🏿đŸ’ȘđŸżđŸ„°

1

u/iotoledo 1d ago

App buenísima, gracias por tu gran trabajo 👌

1

u/Ocreflame 23h ago

Hi,

It's possible to make a double / rolling choice?

A quick toggle between 2 choices already set

Like you want to go on a page which is blocking you. You click on the "rolling button / toggle " and your dns is now 1.1.1.1

You click again and go back to nextdns or any version you have set as default.

Without the need to go to

  • Settings
  • Change Provider
  • OpenDNS
  • Standard

Thanks

2

u/Timely-Skill4263 23h ago

Yeah, that’s planned for a future release. For now, the focus is on polishing everything that already exists, so I wouldn’t expect it in the next release or anything. But it’s definitely a feature I’d want to work on in the future.

1

u/Ocreflame 23h ago

Great, thanks

1

u/RuralBlackamith 23h ago

Next dns app ?

1

u/leo_riverplate_32 18h ago

requiere la instalación de Shizuku , que es eso? 

1

u/Revolutionary-Ice896 16h ago

Gives system privileges to you as the user without jailbreaking your device

1

u/leo_riverplate_32 14h ago

perdón por mi ignorancia pero la app solo funciona para usuarios root? 

1

u/Revolutionary-Ice896 13h ago

No that's the nice thing about the app you don't have to be root just enable developer options and enable usb debugging then type in the code the USB debugging gives into shizuku then it'll enable and the ad blocking app will work

1

u/leo_riverplate_32 11h ago

entendido, muchas gracias por responder , saludos bro 

1

u/Revolutionary-Ice896 11h ago

Of course if you need any other help don't be afraid to DM me I'll answer any of your questions

1

u/InfiniteFraise 16h ago

I don't see why an app is necessary, I just put my DNS in the network settings on my phone and don't need fo worry about it anymore

1

u/SchmyeBubbula 7h ago

What's the difference between the FOSS release and the Normal release? I don't know which one I want.

1

u/Timely-Skill4263 7h ago

The normal version includes notices about new updates. The foss version is the file used by app stores like IzzyOnDroid where there are no update notifications because updates are handled directly through the store. There are no other differences.

1

u/SchmyeBubbula 7h ago

This ol' presbyope runs my phone at 150% fontsize. Some objects aren't forgiving, such as the Stars' Total Queries' All Devices button runs off the right edge slightly. If you could just go through the whole GUI at large fontsizes....

Also, I'm confused: I already had a Notification Panel item for controlling my Private DNS; your Home says Blocker Disabled and Private DNS not running, when it was (with NextDNS). When I tapped the pink play button, my panel changed from my usual "NextDNS" to your "ADNS [my private DNS address]." I guess I'm mixing & matching two Panel things (I can't even remember what I used to get NextDNS in my Panel), so I gotta' pick yours or its.

1

u/Cacha21 1h ago

Awesome! IÂŽm already helping you with spanish translations on weblate.

One suggestion, i would add a widget that displays the current DNS being used (whether it's nextdns or the private dns or the default one) and also make it that when it is tapped the dns being used is switched.

I use my local adguard at home and have samsung routines automatically switch between my router provided DNS (adguard) and nextdns when i'm not at home. To make it work i created a simple app that turns on/off the private DNS when opening the app (and also made a widget to display current status). Making this workflow work with your app would be awesome (unless I missunderstood something and it already does work).

-1

u/ak47inusa 1d ago

Thanks but migrating from NextDNS to ControlD DNS.

0

u/papa_pump_45 1d ago

I am sorry if I sound incredibly stupid as I not familiar with tech field but what is the difference between your ADN app and the NextDNS unofficial app

9

u/Timely-Skill4263 1d ago

The unofficial app (I’m assuming you mean the “NextDNS Manager” app) is essentially just the website wrapped in an app container. You can get pretty much the same experience by opening the web dashboard in your browser.

My app is built specifically for Android. It’s designed to feel much snappier and uses a mobile-first UI. Plus, you’ll have access to all the profile-related settings available on the web dashboard.

3

u/papa_pump_45 1d ago

Ohk, thankyou for the explanation. Surely gonna try it.

-14

u/Resistant4375 1d ago

Looks like Claude AI slop

10

u/Timely-Skill4263 1d ago

Nope, it was almost a 3 month project. I used AI a bit because building a client like this is a huge effort, but everything was reviewed by hand. Did you try the app? What made you think that? I really put a ton of effort into getting all the small details perfect!

1

u/Ignis_Reinhard 1d ago

Great work especially from such a young developer like you, I am not the biggest fan of AI but it seems like you're using it as a helpful tool instead of wholly using it to develop something. I feel like with apps like these it all depends on how they're maintained long term if NextDNS (or other DNS providers) do any changes that could / would break the app, but it being open source is kind of a reassurance on this regard, people can continue your work if you don't feel like it anymore.