PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 27 → InternetConnecté+iOS : qui a pondu l'oeuf ?
InternetConnecté+iOS : qui a pondu l'oeuf ?
Débuté par Pascal BOULESTEIX, 20 juin 2022 18:24 - 11 réponses
Membre enregistré
597 messages
Popularité : +16 (20 votes)
Posté le 20 juin 2022 - 18:24
Salut à tous
Dans mon application, j'ai besoin de connaitre l'état et la nature de la connexion Internet.
Pour Android, la fonction InternetConnecté(myCallBack) fait le job.
Mais pour iOS, il est indiqué dans la doc
La procédure WLangage n'est appelée qu'en cas de changement de l'état du réseau. Elle n'est pas appelée lors de l'appel de la fonction InternetConnecté. Il est nécessaire d'appeler la fonction InternetConnecté (sans paramètre) pour savoir si la connexion Internet est active ou non.

Donc si je comprends bien, sous iOS, on ne peut connaitre la nature de la connexion (gsm, wifi) que quand l'état de la connexion change !
Ai-je bien compris ? Y a-t-il un palliatif ?

--
Pascal Boulesteix
Applications Visiolittoral et WNat
Membre enregistré
2 131 messages
Popularité : +93 (137 votes)
Posté le 21 juin 2022 - 09:38
Popoy vient de nous annoncer :


WiFiInfoConnexion n'est pas disponible pour iOS

--
Cordialement JeAn-PhI
Membre enregistré
808 messages
Popularité : +53 (63 votes)
Posté le 21 juin 2022 - 13:05
Bonjour,

Dans l'aide, ils disent

La fonction InternetConnecté utilise une requête ping afin de tester l'accès à Internet. Il faut donc que les paramètres de sécurité du réseau autorise le ping pour que le résultat de la fonction soit pertinent.

Remarque : Le ping est réalisé sur le DNS de Google (6 secondes, 1 essai). Le code équivalent est :

Ping("8.8.8.8", 6000, 1)


Jordan
Membre enregistré
2 131 messages
Popularité : +93 (137 votes)
Posté le 21 juin 2022 - 15:33
Autant pour moi pour WiFiInfoConnexion
Je doute fort que ping donne l'info voulue par Pascal
Membre enregistré
2 131 messages
Popularité : +93 (137 votes)
Posté le 21 juin 2022 - 15:41
Il y a bien un code Swift mais je ne sais pas si tu arriveras à le mettre dans windev mobile
https://stackoverflow.com/questions/9561253/checking-cellular-network-type-in-ios
Membre enregistré
597 messages
Popularité : +16 (20 votes)
Posté le 22 juin 2022 - 08:55
J'en suis arrivé à ceci à poser ces règles :

Si Wifi : internet OK
Si pas Wifi :
- Android : internet KO si pas au moins 3G+50% de puissance du signal2 - Si
- iOS : internet KO si pas au moins 3G

Procedure gPROC_INTERNET_IS_ACTIF()

bIsActif est un booléen=Vrai

<Compile SI TypeConfiguration=Android>
SI WiFiEtat()<>wifiActif ALORS
SELON RéseauMobileInfoConnexion(réseauType)
CAS "3"
SI RéseauMobileInfoConnexion(réseauSignalGSM) <= 50 ALORS
bIsActif=Faux
FIN
CAS "4"

CAS "5"

AUTRE CAS
bIsActif=Faux
FIN
FIN
<FIN>

<Compile SI TypeConfiguration=iOS>
SI WiFiEtat()<>wifiActif ALORS
SELON RéseauMobileInfoConnexion(réseauType)
CAS "3"

CAS "4"

CAS "5"

AUTRE CAS
bIsActif=Faux
FIN
FIN
<FIN>

RENVOYER (bIsActif)


--
Pascal Boulesteix
Applications Visiolittoral et WNat
Membre enregistré
2 131 messages
Popularité : +93 (137 votes)
Posté le 23 juin 2022 - 10:14
Salut Pascal,
Dans ton selon pourquoi tu n'utilise pas les constantes
réseau2G, réseauEdge, réseau3G, réseau4G, réseau5G et réseauInconnu
Ton code serait plus lisible et compréhensible
Membre enregistré
597 messages
Popularité : +16 (20 votes)
Posté le 23 juin 2022 - 19:28
Oui, pourquoi pas mais Réseau5G n'existe pas en WM26.
A ce propos, comment connaitre la valeur des constantes (Réseau5G, gpsPrécisionElevée) fournis pas WM ?

--
Pascal Boulesteix
Applications Visiolittoral et WNat
Membre enregistré
2 131 messages
Popularité : +93 (137 votes)
Posté le 23 juin 2022 - 23:16
Tu fais un info de la constante, tu auras la valeur en entier
Mais c'est rare d'en avoir besoin.
Pour Réseau5G c'est vrai mais tu n'as pas indiqué cette information.
Si tu fais un info avec WM27 , tu auras sa valeur c'est sûrement 5 comme tu l'as indiqué dans tes cas
Tu peux très bien créer tes propres constantes.
Membre enregistré
597 messages
Popularité : +16 (20 votes)
Posté le 24 juin 2022 - 07:02
Ok pour tout ce que tu dis, mais je trouve dommage que les valeurs des constantes ne soient pas afficher dans la doc quand sont évoquées les différentes valeurs des paramètres et je déplore l'absence d'un petit F2 sur la constante qui afficherait la valeur.

--
Pascal Boulesteix
Applications Visiolittoral et WNat
Membre enregistré
2 131 messages
Popularité : +93 (137 votes)
Posté le 24 juin 2022 - 09:38
Je viens de voir une fonction dont je rappelait plus et qui peut t'aider
https://help.windev.com/fr-FR/…