PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Propriétés récupérées
  • Notes
  • Fonctionnement sous iPhone/iPad
  • Permissions requises
  • Fonctionnalité d'application requise
  • Navigateurs autorisant la géolocalisation
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Demande à être notifié périodiquement de la position courante du périphérique.
Versions 16 et supérieures
WEBDEV - Code Navigateur Cette fonction est désormais disponible en code Navigateur.
Nouveauté 16
WEBDEV - Code Navigateur Cette fonction est désormais disponible en code Navigateur.
WEBDEV - Code Navigateur Cette fonction est désormais disponible en code Navigateur.
Versions 17 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible pour les applications Windows Phone.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Nouveauté 17
Universal Windows 10 App Cette fonction est désormais disponible pour les applications Windows Phone.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Universal Windows 10 App Cette fonction est désormais disponible pour les applications Windows Phone.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Versions 18 et supérieures
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Nouveauté 18
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Versions 21 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Versions 22 et supérieures
WINDEVWindows Cette fonction est désormais disponible pour les applications WINDEV.
Nouveauté 22
WINDEVWindows Cette fonction est désormais disponible pour les applications WINDEV.
WINDEVWindows Cette fonction est désormais disponible pour les applications WINDEV.
Exemple
// Branche une procédure pour recevoir régulièrement la position du périphérique
GPSSuitDéplacement(ProcDeplacement)
// Procédure
PROCEDURE ProcDeplacement(pos est une géoPosition)

Info(" Latitude : " + pos..Latitude)  
Info(" Longitude : " + pos..Longitude)
Syntaxe
AndroidWidget AndroidiPhone/iPadUniversal Windows 10 App

Activer le mécanisme de notification (sous un mobile) Masquer les détails

GPSSuitDéplacement(<Nom de Procédure> [, <Délai> [, <Distance>]])
<Nom de Procédure> : Chaîne de caractères (avec ou sans guillemets)
Nom de la procédure WLangage appelée à chaque notification.
Cette procédure est de la forme :
PROCEDURE <Nom de la Procédure>(<Position>)
Le paramètre <Position> est une variable de type géoPosition contenant les informations sur la position de l'appareil au moment de la notification.
<Délai> : Entier optionnel ou Durée optionnelle
Délai minimal (en centièmes de seconde) entre deux notifications. Si ce paramètre n’est pas spécifié, le délai minimal sera de 60 secondes.
Remarque : Ce paramètre peut correspondre à :
  • un entier correspondant au nombre de centièmes de seconde,
  • une variable de type Durée,
  • Versions 23 et supérieures
    l'indication directe de la durée (par exemple 1 s ou 10 ms).
    Nouveauté 23
    l'indication directe de la durée (par exemple 1 s ou 10 ms).
    l'indication directe de la durée (par exemple 1 s ou 10 ms).
Universal Windows 10 App Ce paramètre n'est pas pris en compte.
<Distance> : Réel optionnel
Distance minimale (en mètres) entre deux notifications.
Si ce paramètre n’est pas spécifié, la distance minimale sera de 5 mètres.
WEBDEV - Code Navigateur

Activer le mécanisme de notification en code Navigateur Masquer les détails

GPSSuitDéplacement(<Nom de Procédure>)
<Nom de Procédure> : Chaîne de caractères (avec ou sans guillemets)
Nom de la procédure WLangage appelée à chaque notification. Cette procédure est de la forme :
PROCEDURE <Nom de la Procédure>(<Position>, <Erreur>)
où :
  • Le paramètre <Position> est une variable de type géoPosition contenant les informations sur la position de l'appareil au moment de la notification. Pour savoir si les propriétés ..Vitesse, ..Précision, ..Direction ou ..Altitude d’une variable de type géoPosition ont été renseignées lors de la récupération de la position, utilisez les propriétés ..VitesseValide, ..PrécisionValide, ..DirectionValide et ..AltitudeValide.
  • <Erreur> est une constante de type Entier correspondant au code d'erreur et pouvant prendre les valeurs suivantes :
    gpsErreurOKAucune erreur n'a été détectée.
    gpsErreurDroitLe navigateur n'a pas les droits pour utiliser la géolocalisation.
    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.

Désactiver le mécanisme de notification

GPSSuitDéplacement()
Remarques
AndroidWidget AndroidiPhone/iPadUniversal Windows 10 App

Propriétés récupérées

  • Pour savoir si les propriétés ..Vitesse, ..Précision, ..Direction ou ..Altitude d’une variable de type géoPosition ont été renseignées lors de la récupération de la position, utilisez les propriétés ..VitesseValide, ..PrécisionValide, ..DirectionValide et ..AltitudeValide.
  • Pour réinitialiser une variable de type géoPosition, utilisez la fonction VariableRAZ.
  • AndroidWidget AndroidiPhone/iPad Il est conseillé d’initialiser les paramètres du fournisseur de localisation à l’aide de la fonction GPSInitParamètre avant de récupérer une position.
  • Les informations de positionnement récupérées correspondent à la dernière position connue du périphérique : elles peuvent donc 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 géoPosition.
  • Les propriétés ..Vitesse, ..Précision, ..Direction et ..Altitude seront renseignées uniquement si le fournisseur de localisation le permet (dans le cas contraire, elles prendront leur valeur par défaut).
    AndroidWidget AndroidiPhone/iPad Le fournisseur de localisation peut être paramétré grâce à la fonction GPSInitParamètre.
AndroidWidget AndroidiPhone/iPadUniversal Windows 10 App

Notes

  • Les fonctions de géolocalisation peuvent consommer beaucoup de ressources sur le périphérique (batterie, bande passante, etc.). Il est conseillé de ne pas fixer de valeurs trop petites pour les paramètres de délai et de distance minimale entre deux notifications.
  • Versions 21 et supérieures
    AndroidiPhone/iPad Il est possible de réaliser un suivi de géolocalisation en arrière-plan sans consommer de ressources via les fonctions géoSuiviActive, géoSuiviDésactive, géoSuiviEtat et géoSuiviProcédure. Pour plus de détails, consultez Suivi de localisation.
    Nouveauté 21
    AndroidiPhone/iPad Il est possible de réaliser un suivi de géolocalisation en arrière-plan sans consommer de ressources via les fonctions géoSuiviActive, géoSuiviDésactive, géoSuiviEtat et géoSuiviProcédure. Pour plus de détails, consultez Suivi de localisation.
    AndroidiPhone/iPad Il est possible de réaliser un suivi de géolocalisation en arrière-plan sans consommer de ressources via les fonctions géoSuiviActive, géoSuiviDésactive, géoSuiviEtat et géoSuiviProcédure. Pour plus de détails, consultez Suivi de localisation.
  • Versions 21 et supérieures
    iPhone/iPad Lors de la génération de l'application, il est possible d'autoriser l'appel à la fonction GPSSuitDéplacement quand l'application est en arrière-plan (option "Autoriser la fonction GPSSuitDéplacement à être appelée quand l'application est en arrière-plan" dans l'étape "Configuration" de l'assistant). Dans ce cas, la géolocalisation se poursuivra lorsque l'application sera en arrière-plan ou lorsque l'appareil sera en veille. Pour plus de détails, consultez Générer une application iOS.
    Nouveauté 21
    iPhone/iPad Lors de la génération de l'application, il est possible d'autoriser l'appel à la fonction GPSSuitDéplacement quand l'application est en arrière-plan (option "Autoriser la fonction GPSSuitDéplacement à être appelée quand l'application est en arrière-plan" dans l'étape "Configuration" de l'assistant). Dans ce cas, la géolocalisation se poursuivra lorsque l'application sera en arrière-plan ou lorsque l'appareil sera en veille. Pour plus de détails, consultez Générer une application iOS.
    iPhone/iPad Lors de la génération de l'application, il est possible d'autoriser l'appel à la fonction GPSSuitDéplacement quand l'application est en arrière-plan (option "Autoriser la fonction GPSSuitDéplacement à être appelée quand l'application est en arrière-plan" dans l'étape "Configuration" de l'assistant). Dans ce cas, la géolocalisation se poursuivra lorsque l'application sera en arrière-plan ou lorsque l'appareil sera en veille. Pour plus de détails, consultez Générer une application iOS.
    iPhone/iPad Lors de la génération de l'application, il est possible d'autoriser l'appel à la fonction GPSSuitDéplacement quand l'application est en arrière-plan (option "Autoriser les fonctions GPSSuitDéplacement et BeaconDétectePrécis à être appelées quand l'application est en arrière-plan" dans l'étape "Configuration" de l'assistant). Dans ce cas, la géolocalisation se poursuivra lorsque l'application sera en arrière-plan ou lorsque l'appareil sera en veille. Pour plus de détails, consultez Générer une application iOS.
  • Pour ne plus recevoir de notifications, appelez la fonction GPSSuitDéplacement sans paramètre ou appelez la fonction GPSTermine.
Versions 17 et supérieures
iPhone/iPad

Fonctionnement sous iPhone/iPad

Au premier lancement d'une fonction GPS, le système demande à l'utilisateur l'autorisation d'effectuer une géolocalisation. En cas de refus de l'utilisateur, toutes les fonctions GPS utilisées dans la suite de l'application échoueront (erreur fatale).
Pour ré-autoriser l'utilisation du GPS pour cette application, il est nécessaire de modifier la configuration système de l'application.
Nouveauté 17
iPhone/iPad

Fonctionnement sous iPhone/iPad

Au premier lancement d'une fonction GPS, le système demande à l'utilisateur l'autorisation d'effectuer une géolocalisation. En cas de refus de l'utilisateur, toutes les fonctions GPS utilisées dans la suite de l'application échoueront (erreur fatale).
Pour ré-autoriser l'utilisation du GPS pour cette application, il est nécessaire de modifier la configuration système de l'application.
iPhone/iPad

Fonctionnement sous iPhone/iPad

Au premier lancement d'une fonction GPS, le système demande à l'utilisateur l'autorisation d'effectuer une géolocalisation. En cas de refus de l'utilisateur, toutes les fonctions GPS utilisées dans la suite de l'application échoueront (erreur fatale).
Pour ré-autoriser l'utilisation du GPS pour cette application, il est nécessaire de modifier la configuration système de l'application.
AndroidWidget Android

Permissions requises

L’utilisation de cette fonction entraîne la modification des permissions requises par l’application.
Permission requise : ACCESS_FINE_LOCATION.
Versions 21 et supérieures
Universal Windows 10 App

Fonctionnalité d'application requise

L’utilisation de cette fonction entraîne la déclaration d'une fonctionnalité d'application dans l'assistant de génération de l'application.
Fonctionnalité requise : Géolocalisation
Cette fonctionnalité permet aux applications d'accéder aux données de géolocalisation de l'appareil ou de l'ordinateur.
Nouveauté 21
Universal Windows 10 App

Fonctionnalité d'application requise

L’utilisation de cette fonction entraîne la déclaration d'une fonctionnalité d'application dans l'assistant de génération de l'application.
Fonctionnalité requise : Géolocalisation
Cette fonctionnalité permet aux applications d'accéder aux données de géolocalisation de l'appareil ou de l'ordinateur.
Universal Windows 10 App

Fonctionnalité d'application requise

L’utilisation de cette fonction entraîne la déclaration d'une fonctionnalité d'application dans l'assistant de génération de l'application.
Fonctionnalité requise : Géolocalisation
Cette fonctionnalité permet aux applications d'accéder aux données de géolocalisation de l'appareil ou de l'ordinateur.
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 GPSSuitDéplacement 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.
Liste des exemples associés :
Android GPS Android (WINDEV Mobile) : Android GPS
[ + ] Cet exemple montre l'utilisation des fonctions GPS du WLangage dans une application Android.
Il permet de récupérer à intervalle régulier :
- La latitude
- La longitude
- L'altitude
- La vitesse
- la direction
WM Sports Exemples multiplateforme (WINDEV Mobile) : WM Sports
[ + ] Cet exemple est une application de sport vous permettant d'enregistrer vos performances.
L'application calcule la distance parcourue, le temps, la vitesse moyenne et le nombre de calories dépensées en fonction du sport pratiqué.
Le parcours réalisé est affiché sur un champ carte grâce à des marqueurs et un tracé d'itinéraire.

L'exemple dispose aussi d'une partie serveur qui sert à la synchronisation des données des utilisateurs.
Ce webservice est disponible dans l'exemple WEBDEV "WW_Sports".
Composantes
WINDEV wd230java.dll
WEBDEV - Code Navigateur WDJS.DLL
Android wd230android.jar
Version minimum requise
  • Version 15
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire