1 votes

Comment désactiver le WiFi lorsqu'il n'y a pas d'Internet disponible sur la connexion ?

J'ai un hotspot wifi qui est toujours allumé. mais parfois l'internet n'est pas disponible dans la connexion dans une telle situation, le téléphone est connecté comme prévu au hotspot wifi mais comme il n'y a pas d'internet, les applications ne peuvent pas vérifier les mises à jour (messages) et je ne serai pas notifié des messages entrants des applications de messagerie instantanée à moins que je ne désactive manuellement le wifi et utilise les données mobiles pour la connectivité internet (2g ou 3g par exemple).

Existe-t-il un moyen de vérifier automatiquement la disponibilité d'Internet (en envoyant une requête à un site web peut-être) et, s'il n'y a pas d'Internet disponible dans le réseau wifi connecté, de désactiver le wifi ? (afin que le téléphone puisse utiliser les données mobiles pour la connectivité Internet).

2voto

Milner Points 533

tasker devrait être capable de le faire. Il peut exécuter des commandes HTTP_GET, et il peut également gérer les connexions de données ; mais pour ce dernier point, selon la version d'Android que vous exécutez sur votre appareil, vous pouvez avoir besoin d'un accès Root pour basculer la connexion de données.

Tasker utilise (des combinaisons de) "conditions" (également appelées "contexte") pour déclencher des "tâches" - ce qui, ensemble, s'appelle un "profil". Vous avez donc besoin d'un profil pour cela. Allons-y étape par étape :

Votre condition sera basée sur le temps, car vous voulez vérifier la connectivité périodiquement. Choisissez judicieusement : vérifier trop souvent peut épuiser la batterie, vérifier trop rarement rend l'ensemble inutile. Commencez par une minute, puis passez à 30 secondes si cela ne suffit pas.

Il s'agit donc d'une tâche conditionnelle, qui pourrait être décrite comme "désactiver le WiFi si je ne peux pas accéder à l'internet". Alors, mettons tout ça ensemble :

  • Condition :
    • C'est l'heure.
      Dans les champs, définissez la période pendant laquelle l'action doit être active, ainsi que l'intervalle de "répétition".
    • WiFi connecté.
      Je recommande d'ajouter ça pour avoir un peu de jus : Si vous êtes déjà sur les données mobiles avec le WiFi désactivé, il n'y a pas besoin de désactiver le WiFi - n'est-ce pas ? Sinon, vous pouvez aussi utiliser %WIFI ~ on - mais cela peut vous donner un mal de tête lorsque vous l'allumez et que vous ne parvenez pas à récupérer l'URL, Tasker l'éteint avant qu'il ne se connecte ;)
  • Tâche :
    • HTTP Get
    • WiFi (désactivé) IF %HTTPR ~ -1

%HTTPRTasker dans laquelle le code de réponse est stocké. Selon le Guide de l'utilisateur de Tasker , Un code de réponse de -1 indique un problème lors de la demande. Ce problème devrait être un timeout ou une erreur "network unreachable" (car un "not found" devrait être un code "404"), mais vous devrez peut-être jouer avec cela.

Ce qui précède ne couvre pas un "retour automatique", vous deviez donc activer le WiFi manuellement (bien que cela puisse être automatisé par un second "profil", vérifiant périodiquement si les choses ont changé).

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