Qt Positioning sur Android
Utilisation de Qt Positioning à partir de services Android
L'utilisation de Qt Positioning à partir d'un service nécessite plusieurs actions supplémentaires, en fonction de la version d'Android. Les sections ci-dessous donnent plus de détails sur ces actions.
Remarque : depuis Android 8 (niveau API 26), le système d'exploitation limite la fréquence à laquelle une application peut récupérer la position actuelle de l'utilisateur lorsqu'elle fonctionne en arrière-plan. L'application ne pourra normalement recevoir des mises à jour de localisation que quelques fois par heure. Pour plus d'informations, voir Limites de localisation en arrière-plan.
Utilisation du service d'avant-plan
Depuis Android 8 (niveau API 26), le service d'arrière-plan peut être tué par le système d'exploitation Android lorsque l'application passe en arrière-plan. Cela se produit normalement après environ une minute d'exécution en arrière-plan. Pour que le service de localisation continue à fonctionner, il doit être mis en œuvre en tant que service d'avant-plan. Ce service affiche une notification dans la barre d'état, qui ne peut être supprimée tant que le service n'est pas arrêté ou retiré de l'avant-plan. Cela permet à l'utilisateur d'être toujours au courant des activités importantes en arrière-plan.
Remarque : depuis Android 9 (niveau API 28), les services d'avant-plan nécessitent une autorisation spéciale FOREGROUND_SERVICE. Voir la documentation Android pour plus de détails sur la mise en œuvre des services d'avant-plan.
Utiliser l'autorisation de localisation en arrière-plan
Depuis Android 10 (niveau API 29), le service doit demander l'autorisation ACCESS_BACKGROUND_LOCATION. Il doit être ajouté au fichier AndroidManifest.xml comme suit :
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
Note : Une fois la permission ajoutée à AndroidManifest.xml, il est toujours nécessaire d'autoriser explicitement l'accès constant aux services de localisation pour l'application. Pour ce faire, il convient de naviguer vers Settings -> Apps, de sélectionner une application appropriée, d'ouvrir ses autorisations et de spécifier l'autorisation Allow all the time pour la localisation (voir la capture d'écran ci-dessous).

Pour plus de détails, voir Access Location dans la documentation d'Android en arrière-plan.
© 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.