3 votes

Empêcher toute application Android de modifier l'état du WiFi

À un certain moment au cours de l'année dernière, j'ai remarqué que mon appareil Android (HTC 10, Android 8.0.0) WiFi s'allume même lorsque je l'ai désactivé. J'ai découvert qu'il existe une permission appelée CHANGE_WIFI_STATE qui permet aux applications d'activer/désactiver le WiFi sur mon appareil.

Je ne veux pas que ça arrive. Je veux avoir le contrôle total de l'état du WiFi, pour plusieurs raisons dont le désir d'éviter d'utiliser un mauvais WiFi sans oublier le nom et la clé du point d'accès.

Est-ce qu'il y a tout Comment puis-je y parvenir sans désinstaller les applications coupables ? Idéalement, j'aimerais révoquer l'accès à l'application CHANGE_WIFI_STATE pour toutes les applications présentes et futures, mais je serais d'accord pour le faire par application également.

0 votes

Le moyen le plus simple serait d'utiliser un pare-feu. Voir le tag Pare-feu Android.stackexchange.com/questions/tagged/firewall

0 votes

@beeshyams Je ne vois pas comment un pare-feu pourrait s'appliquer. Pouvez-vous expliquer ce que vous voulez dire ?

0 votes

En utilisant un pare-feu, configurez-le pour autoriser l'accès wifi aux applications de votre choix. L'accès/le refus sera basé sur les règles du pare-feu, sans tenir compte du fait que l'application change l'état du wifi.

1voto

Firelord Points 23064

Vous pouvez utiliser le gestionnaire de permissions natif d'Android (appops) pour empêcher les applications d'utiliser cette permission. Bien que vous puissiez utiliser la commande appops en utilisant adb, cela peut devenir pénible car vous avez besoin d'un PC pour faire ce travail, à moins que vous n'ayez un accès Root. Comme alternative, il y a des interfaces graphiques tierces pour appops dans le Play Store, parmi lesquelles j'utilise App Ops - Gestionnaire de permissions . Il peut fonctionner avec les téléphones enracinés et non enracinés, bien qu'il soit relativement pénible en mode non enraciné.

L'application affiche un tutoriel au démarrage initial, afin de configurer le mode pour lui accorder le privilège requis. Après cela, il vous suffit de trouver votre application dans la liste, et de basculer cette permission listée avec le titre " Connexion et déconnexion du Wi-Fi ".

Dans les paramètres de l'application App Ops, vous pouvez définir un modèle (autoriser ou refuser une permission) qui s'appliquera à toutes les applications nouvellement installées.

0 votes

OK, j'ai trouvé comment faire tout ça, mais malheureusement CHANGE_WIFI_STATE n'apparaît pas dans la liste des autorisations dans App Ops, même pour les applications dont je sais qu'elles ont cette autorisation. Cela semblait si prometteur mais cela n'a pas résolu le problème. Merci quand même.

0 votes

@TheQuickBrownFox L'autorisation est répertoriée avec le label "Connecter et déconnecter du Wi-Fi". Il est difficile de croire que la permission ne peut être trouvée car j'ai joint une capture d'écran dans la réponse en fait. Si une application en particulier vous dérange, faites-le moi savoir car j'essaierai de la tester et de modifier ma réponse en conséquence.

0 votes

L'option "Connecter et déconnecter du Wi-Fi" n'est pas présente. Elle n'est pas répertoriée dans la section "All permissions" de l'application qui vous permet de "View all permissions supported by your system", donc je suppose qu'elle n'est pas disponible du tout. Mon téléphone n'est pas enraciné, soit dit en passant.

1voto

Le problème pourrait être que le niveau de protection de la permission est devenu plus faible. La catégorie de l'autorisation CHANGE_WIFI_STATE est passée de "Dangereux" à "Normal". Le site Link pour Google Git. Cela signifie que la permission de changer l'état du WIFI est accordée automatiquement à l'application, et que l'application n'a pas besoin de demander la permission pendant l'exécution pour l'activer ou la désactiver.

0voto

Stephen Dolier Points 98

Allez dans Paramètres -> Autorisations -> Modifier les paramètres du système et désactivez l'accès de toutes les applications à ces paramètres.

Dans votre appareil, ce paramètre peut se trouver à un endroit légèrement différent.

0voto

Costin Gușă Points 111

Bien que vous ayez mentionné l'utilisation d'Android 8 (Vous pouvez obtenir un LineageOS non officiel sur votre appareil HTC 10 - au prix coûteux d'un échec de la vérification SafetyNet - afin de pouvoir choisir Android 9, 10 et même 11). le texte suivant s'applique à Android 9 et aux versions ultérieures :

Depuis Android 9, le paramètre permettant d'autoriser ou de refuser aux applications l'accès au changement de l'état du wifi se trouve sous : Paramètres > Apps & Notifications > Accès aux applications spéciales > Contrôle du Wi-Fi .

Vous devrez refuser l'accès un par un, manuellement.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X