Masquer la notification VPN d’Android sans couper le tunnel
Android peut afficher trois notifications VPN différentes. Découvrez quelle application possède celle que vous voyez, ce que chaque contrôle change vraiment et ce qui continue de fonctionner.
Vous pouvez masquer la notification qui indique que votre VPN fonctionne, et le tunnel continuera de fonctionner sans elle. Cela surprend, car le message et la connexion semblent former un seul objet. Ce n’est pas le cas. Sur la plupart des téléphones Android, l’entrée du volet, la clé de la barre d’état et la notification du service persistant peuvent venir de trois propriétaires différents, et un seul de ces propriétaires répond à l’autorisation de notification de l’application. Savoir ce que vous avez le droit de retirer commence par identifier qui a publié la ligne que vous regardez.
Trois notifications, trois propriétaires
Le premier propriétaire est l’application VPN elle-même, qui publie généralement une notification persistante avec une action de connexion ou de déconnexion et un minuteur de session. Le deuxième est l’indicateur VPN d’Android : l’interface système dessine l’icône de clé et, selon la version et le fabricant, une ligne au niveau du système qui signale le réseau VPN actif. Le troisième est une notification de politique de l’appareil, contrôlée par un profil professionnel ou une application d’administration. Aucune n’est le même objet, même lorsqu’elles sont côte à côte dans le volet.
Classez le message avant de toucher un interrupteur :
| Notice | Who controls it |
|---|---|
| App-owned ongoing notice | The app's notification channel; a long-press shows the channel name and the owning package |
| Foreground-service notice | The service visibility Android requires while the tunnel runs; the app cannot simply drop it |
| System VPN indicator | SystemUI or the manufacturer, driven by the VPN network state rather than by the app's channel |
| Work-policy notice | The administrator or work-profile policy; the phone user may not have the switch at all |
Les contrôles que vous voyez dépendent de la version d’Android, de la compilation du fabricant et du canal créé par l’application. Un interrupteur grisé est une déclaration sur la politique, pas une invitation à la contourner. Si l’interrupteur n’existe pas dans votre compilation, la réponse honnête est que cette notification précise n’est pas à vous de retirer.
Trouver le paquet derrière la ligne
Appuyez longuement sur la notification et ouvrez ses réglages avant de lire quoi que ce soit d’autre. L’écran sur lequel vous arrivez nomme le canal, et à partir d’Android 8 ce canal appartient à exactement un paquet. Si le canal s’appelle quelque chose comme état du VPN et que l’application est votre client, la notification appartient à l’application et la page de réglages de l’application est l’endroit à consulter. Si vous arrivez sur une page système sans aucun canal, vous regardez un indicateur de la plateforme et l’application ne peut pas vous aider.
Quand l’appui long ne vous en dit pas assez, un appel adb liste ce qui est réellement publié et par qui : adb shell dumpsys notification --noredact, puis cherchez dans la sortie le paquet que vous soupçonnez. Vous voulez le paquet qui publie et l’identifiant du canal, pas quelque chose que vous pourriez modifier depuis là. Traitez la sortie comme un diagnostic, car rien dans cette liste ne change la notification.
Sur un téléphone géré, la réponse est parfois ennuyeuse : la notification vient de l’application de politique de l’appareil, et la personne qui tient le téléphone n’est pas celle qui peut la désactiver. Dans ce cas, la console d’administration est le seul contrôle pris en charge, et les réglages du téléphone restent grisés quel que soit le menu que vous trouvez.
Ce que change vraiment l’autorisation d’Android 13
Android 13 a fait des notifications une autorisation d’exécution, donc une application ciblant l’API 33 doit demander avant de publier quoi que ce soit. Refusez cette demande et les notifications de l’application cessent d’apparaître dans le volet, ce qui ressemble à la solution recherchée. Mais le service de premier plan derrière un VPN continue de tourner, et le système affiche toujours le service dans le Gestionnaire des tâches même lorsque sa notification a disparu du volet. L’autorisation VPN elle-même reste intacte : le tunnel tient jusqu’à ce que vous le déconnectiez ou révoquiez le consentement VPN de l’application.
Cet échange est pire qu’il n’y paraît, car la notification est aussi votre moyen le plus rapide de voir la session et de la terminer. Retirez-la et vous avez rendu le téléphone plus difficile à comprendre sans rien changer au routage. La documentation sur l’autorisation de notification décrit le comportement du volet ; elle ne décrit pas un moyen pris en charge de rendre silencieux un tunnel en cours.
Il reste un détail de version à connaître : une notification de service de premier plan est exigée par le modèle de service, et l’application n’est pas libre de la cacher simplement parce que vous avez refusé une autorisation. Certaines compilations gardent une version compacte visible, d’autres déplacent la preuve vers le Gestionnaire des tâches, et cette différence relève du choix du fabricant et non d’un réglage que vous auriez manqué.
Le mode démo et les astuces d’icônes ne sont pas une solution
Vous trouverez des conseils sur le mode démo, sur le masquage d’icônes via des commandes adb non documentées et sur un bug d’interface qui fait disparaître la clé. Tout cela change la présentation. Rien de tout cela ne change le routage, la politique ou l’autorisation VPN que le système suit, et un téléphone dont l’état du réseau est invisible est plus difficile à diagnostiquer qu’un autre avec une ligne de plus dans le volet.
L’icône de connexion d’une application n’est pas non plus un contrôle de santé. Le tunnel peut être coupé alors qu’une ancienne interface ou une notification périmée subsiste, et un service de filtrage local peut lever la clé VPN sans envoyer un octet vers une sortie distante. Vérifiez l’état réel dans les réglages VPN du système, pas dans le volet.
Ce que je changerais, dans l’ordre
Commencez par identifier le propriétaire, puis n’utilisez que le contrôle que ce propriétaire propose. Si la notification appartient à l’application et est facultative, désactivez ce canal et laissez le canal du service tranquille. Si c’est l’indicateur système, acceptez-le, car il signale un fait sur l’appareil plutôt que de faire la publicité d’une application. Sur un appareil géré, arrêtez-vous à la politique de l’administrateur et ne cherchez pas de contournement.
Confirmez ensuite que vous avez toujours un moyen pris en charge de vérifier le tunnel et de le déconnecter, que ce soit l’écran de l’application ou la page de réglages VPN du système. Un téléphone avec une bannière de moins et un moyen clair de tuer la session est le résultat que vous voulez. L’inverse, un volet plus silencieux et aucune idée de la façon dont le trafic est routé, n’est pas une amélioration.