Sur cette page

Qt Positioning Les plugins

Qt Positioning La majorité des fonctionnalités de l'outil de positionnement sont assurées par des plugins. Ce document explique comment développer un nouveau plugin de position.

Plugins par défaut

Certains plugins sont déjà livrés avec Qt. Il s'agit des plugins suivants

androidSous-système de positionnement Android. Disponible uniquement sur Android.
corelocationRecouvre les sous-systèmes de positionnement d'iOS et de macOS. Disponible uniquement sur les plateformes Apple prenant en charge corelocation.
geoclue2Un backend GeoClue v2 qui fournit une interface au service D-Bus GeoClue v2.
gypsyUn backend Gypsy qui fournit une interface au démon Gypsy.
winrtSous-système de positionnement WinRT. Disponible uniquement sur WinRT et Windows10.
nmeaUn backend NMEA qui analyse les flux NMEA d'un récepteur GPS pour fournir des mises à jour de position. Ce plugin peut utiliser le port série, le socket ou un fichier comme source.
positionpollUn backend fournissant uniquement des fonctionnalités de surveillance de zone via l'interrogation des mises à jour de position.

Description des plugins

Chaque plugin est décrit par un fichier json. Le fichier json décrit les capacités et la version du plugin. Vous trouverez ci-dessous un exemple de fichier json utilisé par le plugin postionpoll :

{
    "Keys": ["positionpoll"],
    "Provider": "positionpoll",
    "Position": false,
    "Satellite": false,
    "Monitor": true,
    "Priority": 1000,
    "Testable": true
}

Les entrées ont la signification suivante :

CléDescription
CléLe nom unique/clé du plugin. Chaque plugin de position doit avoir un nom unique.
FournisseurLe nom du fournisseur des services. Plusieurs plugins peuvent avoir le même nom. Dans ce cas, la chaîne Version sera utilisée pour mieux distinguer les plugins.
PositionDéfini à true si le module d'extension met en œuvre un service QGeoPositionInfoSource.
SatelliteFixé à true si le plugin implémente un QGeoSatelliteInfoSource.
MoniteurFixé à true si le plugin implémente un QGeoAreaMonitorSource.
PrioritéLa priorité du plugin. Si plusieurs plugins ont le même nom de fournisseur, le plugin ayant la priorité la plus élevée sera utilisé.

Mise en œuvre des plugins

L'implémenteur d'un plugin doit sous-classer QGeoPositionInfoSourceFactory et surcharger une ou plusieurs de ses fonctions. Si un plugin ne supporte pas une fonctionnalité spécifique, la fonction doit retourner 0 ou utiliser l'implémentation par défaut.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.