>_ DevTrendsfr

Langue

Accueil

Langages

Sections

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarqué Sécurité
Kotlin

Comment j'ai cessé de galérer avec les paramètres DNS sur Android

Situation familière : vous décidez de configurer un serveur DNS personnel pour éliminer les publicités dans les applications et le navigateur. Vous vous rendez dans les paramètres Android, explorez les profondeurs du menu de connexion, cherchez l'option "DNS privé", saisissez l'adresse de l'hôte... Et cela à chaque fois que vous devez vérifier si un site ou une application est "cassé" à cause du DNS. Sur Android, ce paramètre est tellement enfoui qu'on croirait que Google protège intentionnellement ses revenus publicitaires.

Récemment, je suis tombé sur un petit utilitaire appelé adns par le développeur eyalm2000. C'est un outil open-source qui fait une chose simple : place le toggle DNS système directement sur l'écran d'accueil ou dans la barre de notifications.

Quel est l'intérêt

Le problème avec la plupart des bloqueurs de publicités sur Android est qu'ils fonctionnent soit comme un service VPN local, soit comme un service en arrière-plan. Cela épuise inévitablement la batterie, occupe de l'espace dans les notifications, et entre parfois en conflit avec de véritables clients VPN.

adns fonctionne différemment. Il n'exécute aucun processus en arrière-plan. C'est essentiellement une interface graphique légère pour le paramètre DNS privé du système qui est apparu depuis Android 9. L'application commute simplement une variable système globale.

À qui cela est utile :

  • Utilisateurs de NextDNS (pour eux c'est le paradis avec l'intégration directe)
  • Ceux qui utilisent AdGuard DNS, Cloudflare, ou leurs propres serveurs Pi-hole/AdGuard Home
  • Développeurs qui doivent basculer rapidement le DNS pour tester des sites

Quelques clics et un internet propre

Ce qu'il y a de plus pratique dans l'application, c'est l'intégration NextDNS. Si vous avez un compte, vous pouvez vous connecter directement dans l'application, sélectionner le profil dont vous avez besoin, et modifier ses paramètres à la volée. Si vous utilisez un autre service, vous spécifiez simplement le nom d'hôte (par exemple, dns.adguard.com).

Fonctionnalités que j'ai appréciées :

  • Tuyauterie des Paramètres rapides. Vous pouvez maintenant désactiver le filtrage en une seconde sans minimiser l'application en cours.
  • Pas de consommation de batterie. L'application "dort" 99% du temps et ne se réveille que lorsque vous appuyez sur le bouton.
  • Design Material 3. On dirait une partie native du système, pas un hack de l'époque d'Android Gingerbread.

Écran principal ADNS Écran des paramètres ADNS Écran des paramètres ADNS

Comment le faire fonctionner

Comme Android garde ses paramètres comme la prunelle de ses yeux, aucune application n'est autorisée à modifier le DNS système comme ça. Pour que adns fonctionne, vous devez lui accorder la permission WRITE_SECURE_SETTINGS.

Il y a deux chemins. Le plus simple pour ceux qui ne veulent pas se compliquer avec la console est d'utiliser Shizuku. Cette application fait le pont entre les permissions ADB et les autres programmes. Si Shizuku est déjà configuré, vous appuyez simplement sur un bouton dans l'interface de adns.

La deuxième option est l'ADB classique. Connectez votre téléphone à votre ordinateur et exécutez la commande :

adb shell pm grant com.eyalm.adns android.permission.WRITE_SECURE_SETTINGS

Après cela, la magie commence à fonctionner.

Aspect technique

Le projet est écrit en Kotlin avec Jetpack Compose. Le code est surprenamment propre et compact. Si vous faites du développement mobile, je vous recommande de consulter le dépôt — c'est un excellent exemple de travail avec les paramètres système Android en utilisant des méthodes modernes. L'application est légère et ne nécessite pas de permissions inutiles (sauf celles nécessaires pour le DNS).

Faut-il essayer

Si vous utilisez activement un DNS personnalisé et que vous en avez marre de naviguer dans les menus de paramètres — certainement oui. C'est un de ces cas où un petit utilitaire résout un "point douloureux" spécifique et le fait avec élégance.

Le seul inconvenient que j'ai trouvé : l'installation nécessite une configuration unique avec ADB ou Shizuku. Mais c'est la politique de sécurité d'Android, le développeur ne peut rien y faire. Mais une fois configuré — vous oubliez les publicités pour toujours.

Vous pouvez récupérer l'APK dans la section Releases sur GitHub ou dans le catalogue IzzyOnDroid.

Projets similaires