Fonctionnement actuel
Rabbit Battery propose actuellement une option pour réactiver automatiquement le Wifi. Cette option comporte un défaut, il faut que le Wifi soit réactivé pour scanner les points d'accès et ainsi définir ce qu'il faut faire :- Laisser activé si un point d'accès connu est à portée.
- Couper le Wifi dans le cas contraire.
Si vous partez 8h de chez vous et en comptant une tentative de réactivation toutes les 30 minutes. Nous avons donc approximativement 16 tentatives de connexion échouée.
Evolution
Plusieurs utilisateurs ont demandé une évolution de cette fonctionnalité pour y ajouter une contrainte de réactivation. Le but étant de ne pas tenter de réactivation Wifi lorsque le téléphone n'est pas dans un lieu connu.
Solution envisagée
Je pense qu'il est important que l'utilisateur fasse le moins de configuration possible. Donc, je ne souhaite pas lui faire configurer son lieu en parcourant sa maison pour capter tous les réseaux GSM couvrant son domicile.
La configuration se fera automatiquement de la manière suivante :
* L'utilisateur est chez lui et allume une première fois le Wifi manuellement dans la zone 1.
=> Rabbit Battery enregistre le point Wifi ainsi que l'identifiant du réseau 1.
* L'utilisateur se déplace dans sa maison et l'appareil bascule sur le réseau 2.
=> Rabbit Battery enregistre le réseau 2 et l'associe au point d'accès Wifi.
Maintenant, reprenons l'exemple initial :
L'utilisateur sort de chez lui pendant 8h. Avant chacune des tentatives de connexion, Rabbit Battery vérifie si le GSM est connecté à une cellule réseau connu. Si ce n'est pas le cas, le Wifi n'est pas réactivé automatiquement. Nous évitons donc les ~16 tentatives de connexion vouées à l'échec.
Lorsque l'utilisateur sera de retour chez lui, il sera dans un lieu connu, Rabbit Battery se permettra alors de réactiver le Wifi.
La seule action demandée à l'utilisateur sera d'activer une première fois le Wifi là où il le désire.
Si vous avez des suggestions, n'hésitez pas. Cette fonctionnalité est en cours de développement.