web-dev-qa-db-fra.com

Comment détecter si les sources GPS sont activées à l'aide de QtPositioning dans Ubuntu Touch?

J'utilise PositionSource pour obtenir la latitude et la longitude de l'emplacement de l'utilisateur à partir des données GPS fournies par Ubuntu Touch. Cependant, je dois détecter si le GPS a été activé par l'utilisateur.

En lisant la documentation officielle de PositionSource ici , j'ai trouvé qu'il avait la propriété valide qui, selon les documents officiels, dit,

Cette propriété est vraie si l'objet PositionSource a acquis un plug-in backend valide pour fournir des données. Si faux, les autres méthodes sur PositionSource n'auront aucun effet.

Les applications doivent vérifier cette propriété pour déterminer si le positionnement est disponible et activé sur la plate-forme d'exécution et réagir en conséquence.

Cependant, cette propriété ne semble pas se mettre à jour lorsque j'active/désactive le service de localisation dans Ubuntu Touch. J'ai essayé de changer l'état du GPS à l'aide de l'interface graphique (indicateur de localisation) et de la ligne de commande par,

stop ubuntu-location-service-trust-stored

Y a-t-il une autre propriété que je peux suivre pour vérifier si le GPS est activé/désactivé sur le téléphone?

4
nik90

Les applications ne doivent pas s'appuyer sur les connaissances du fournisseur de positionnement réel, mais plutôt sur les estimations de précision fournies avec les mises à jour de position individuelles (voir http://developer.ubuntu.com/api/qml/sdk-14.10/QtLocation.Position)./# horizontalAccuracy-prop ). Avec cela, les développeurs d'applications n'ont pas besoin de se soucier des caractéristiques spécifiques des systèmes de positionnement par satellite (par exemple, GPS, GLONASS, Beidou) et se concentrent plutôt sur la tâche à accomplir.

De plus, le sous-système de localisation dans Ubuntu pourrait même ne pas utiliser le GPS pour fournir des estimations de position, mais s'appuyer uniquement sur le positionnement basé sur le réseau.

1
user322545