DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de géolocalisation
  • Gestion des blocages
  • Navigateurs autorisant la géolocalisation
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Récupère les informations sur la position actuelle du périphérique.
Exemple
MaPosition est une géoPosition
MaPosition = GPSRécupèrePosition()
// Vérifie validité de la position avec ErreurDétectée
SI ErreurDétectée ALORS RETOUR
Info(" Latitude : " + MaPosition.Latitude) 
Info(" Longitude : " + MaPosition.Longitude)
WEBDEV - Code Navigateur
// Géolocalisation depuis WEBDEV, une procédure navigateur est appelée.
// Traitement réalisé depuis un bouton ayant comme action "aucune"
GPSRécupèrePosition(ProcNavigateur, 200)
// Procédure navigateur "ProcNavigateur"
PROCÉDURE ProcNavigateur(MaPosition est un géoPosition, nMonErreur est un entier)
 
SELON nMonErreur
 
CAS gpsErreurOK
// Aucune erreur n'a été détectée
PAGE_Page1.SAI_SansNom1 = MaPosition.Altitude + " " + ...
MaPosition.Longitude
CAS gpsErreurDroit
PAGE_Page1.SAI_SansNom1 = ...
"Le navigateur n'a pas les droits " + ...
"pour utiliser la géolocalisation (ou site non HTTPS)."
CAS gpsErreurPosition
PAGE_Page1.SAI_SansNom1 = "Impossible de déterminer la position " + ...
"(erreur interne du fournisseur d'accès par exemple)."
CAS gpsErreurTimeout
PAGE_Page1.SAI_SansNom1 = ...
"La position n'a pas pu être récupérée " + ...
"dans le temps imparti."
AUTRE CAS
PAGE_Page1.SAI_SansNom1 = "Erreur indéterminée"
FIN
Syntaxe
WEBDEV - Code Navigateur

Récupération des informations en code Navigateur Masquer les détails

GPSRécupèrePosition([<Procédure WLangage> [, <Timeout>]])
<Procédure WLangage> : Nom de procédure
Nom de la procédure WLangage en code navigateur (également nommée "callback") appelée lorsque la position est récupérée.
Cette procédure est de la forme :
PROCEDURE <Nom de la Procédure>(<Position>,<Erreur>)
où :
  • <Erreur> est une constante de type Entier correspondant au code d'erreur et pouvant prendre les valeurs suivantes :
    gpsErreurDroit
    • Le navigateur n'a pas les droits pour utiliser la géolocalisation.
    • Le navigateur est récent et le site n'utilise pas le protocole sécurisé HTTPS.
    gpsErreurOKAucune erreur n'a été détectée.
    gpsErreurPositionImpossible de déterminer la position (erreur interne du fournisseur d'accès par exemple).
    gpsErreurTimeoutLa position n'a pas pu être récupérée dans le temps imparti.
<Timeout> : Entier optionnel ou Durée optionnelle
Délai maximal (en centièmes de seconde) d'attente pour la mise à jour de la position du périphérique.
  • Si ce délai est écoulé avant que la position du périphérique n'ait été mise à jour, l'erreur gpsErreurTimeOut est renvoyée dans le paramètre <Erreur> de la procédure WLangage.
  • Si ce paramètre n'est pas spécifié, le délai est de 1 minute.
Remarque : Ce paramètre peut correspondre à :
  • un entier correspondant au nombre de centièmes de seconde,
  • une variable de type Durée,
  • l'indication directe de la durée (par exemple 1 s ou 10 ms).
Remarques

Gestion des blocages

La fonction GPSRécupèrePosition est bloquante jusqu'à ce que la position actuelle de l'appareil ait pu être déterminée ou que le délai d'attente fixé par le paramètre <Timeout> ait expiré.
Si la fonction est appelée dans le thread principal de l'application, un sablier sera affiché durant l'exécution de la fonction. Le message affiché par le sablier peut être spécifié grâce au paramètre <Message>.
Dans le cas contraire, l'exécution du thread secondaire sera bloquée durant l'exécution de la fonction et aucun sablier ne sera affiché.
WEBDEV - Code Navigateur Cette fonction n'est pas bloquante.
Remarque : Pour connaître la dernière position connue de l'appareil sans délai d'attente, utilisez la fonction GPSDernièrePosition. Attention, les informations de positionnement récupérées peuvent ne pas correspondre à la position actuelle du périphérique si par exemple le périphérique a été déplacé alors que le signal GPS n'était pas valide. Il est possible de connaître la date et l'heure à laquelle la position a été calculée grâce à la propriété DateMesure de la variable de type géoPosition.
WEBDEV - Code Navigateur

Navigateurs autorisant la géolocalisation

Attention : La géolocalisation n'est disponible que sur certains navigateurs récents :
  • FireFox à partir de la version 3.5,
  • Chrome à partir de la version 5.0.342.1,
  • Opéra à partir de la version 10.6,
  • Safari à partir de la version 5.0.
Lors de l'appel à une fonction de géolocalisation, le navigateur demande l'autorisation de localiser.Remarque : A partir de Chrome 50 (y compris sur Android), la fonction GPSRécupèrePosition ne peut être utilisée que sur des sites sécurisés (via un certificat SSL par exemple). Si le site n'est pas sécurisé, la fonction ne renvoie pas un résultat exploitable. Lors de test en local (localhost), la fonction fonctionne correctement.
Classification Métier / UI : Code métier
Composante : wd290java.dll
Version minimum requise
  • Version 15
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale