PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV Mobile (earlier versions) → WiFiInfoConnexion
WiFiInfoConnexion
Started by Lise, Mar., 16 2023 4:59 PM - 5 replies
Posted on March, 16 2023 - 4:59 PM
Bonjour à tous,

je cherche à obtenir des infos sur la qualité de ma connexion Wifi sur un appareil Android, je suis en version 26 de Windev mobile, j'ai ajouté les permissions requises décrites dans la doc pour utiliser la fonction WiFiInfoConnexion mais la chaine renvoyée est vide systématiquement lorsque j'utilise cette fonction alors que je suis bien connectée au Wifi au moment où je fais le demande d'info.
Quelqu'un a déjà été confronté à ce problème ?
Merci.
Registered member
3,361 messages
Popularité : +93 (137 votes)
Posted on March, 17 2023 - 9:31 AM
Salut @Lise,
As tu utilisé un SI WiFiEtat avant ?
Et quel est ta version d'Android car a partir de la 10 il faut faire des demandes explicites
A l'utilisateur en plus de les mettre dans le manifeste
Donc la fonction PermissionDemande doit être utilisé.
Posted on March, 17 2023 - 9:42 AM
Bonjour @Popoy,

oui j'utilise bien WifiEtat avant et il me renvoie bien 1,
effectivement je suis en Android 10 ,j'ai bien rajouté les demandes dans la génération de l'apk :
android.permission.ACCESS_BACKGROUND_LOCATION
Permet à une application en arrière plan d'accéder à un emplacement (Cell-ID, WiFi, GPS)
android.permission.ACCESS_COARSE_LOCATION
Permet à une application d'accéder à un emplacement indéfini (Cell-ID, WiFi).
android.permission.ACCESS_NETWORK_STATE
Permet aux applications d'accéder à des informations concernant les réseaux.
android.permission.ACCESS_WIFI_STATE
Permet aux applications d'accéder à des informations concernant les réseaux Wi-Fi.
android.permission.INTERNET
Permet aux applications d'ouvrir des sockets réseau.
android.permission.RECEIVE_BOOT_COMPLETED
Permet à une application de recevoir le ACTION_BOOT_COMPLETED qui est diffusé lorsque le système a terminé le démarrage.
android.permission.WRITE_EXTERNAL_STORAGE
Permet à une application d'écrire sur un stockage externe (carte mémoire, ...).

Dans le code d'un bouton j'ai :
PermissionDemande(permLocalisationEnArrièrePlan, Callback)
PROCÉDURE INTERNE Callback(p est une Permission)
SI p.Accordé ALORS
// Utilisation possible des fonctions nécessitant la localisation en arrière-plan
SI WiFiEtat() = wifiActif ALORS
Info(ChaîneConstruit("Votre vitesse de connexion actuelle est de %1 Mbps",WiFiInfoConnexion(wifiVitesse)))
Info(WiFiEtat()+" / "+WiFiInfoConnexion(wifiTout))
SI ErreurDétectée ALORS
ErreurInfo(errComplet)
FIN
SINON
Info("le wifi n'est pas actif")
FIN



FIN
FIN

au premier lancement de l'application, l'appareil me demande bien d'autoriser les fonctions nécéssaires mais lorsque je fais
Info(ChaîneConstruit("Votre vitesse de connexion actuelle est de %1 Mbps",WiFiInfoConnexion(wifiVitesse)))
Mon %1 est une chaine vide...
Posted on March, 17 2023 - 10:18 AM
Pour info, la fonction WiFiDétectePointAccès ne fonctionne pas non plus, je dois vraiment avoir un soucis sur les autorisations de l'application mais je ne vois pas où...
Posted on March, 17 2023 - 10:54 AM
Bon, je me répond à moi-même si ça peut aider qqn...
il me manquait l'autorisation ACCESS_FINE_LOCATION !!!
Registered member
3,361 messages
Popularité : +93 (137 votes)
Posted on March, 17 2023 - 12:03 PM
Merci Lise de ton retour
En effet, on ne s'attend pas à avoir besoin de
ACCESS_FINE_LOCATION pour une utilisation du Wifi.