IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Android Discussion :

connaitre position GPS du téléphone


Sujet :

API standards et tierces Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 18
    Par défaut connaitre position GPS du téléphone
    Bonjour,

    Je développe une appli qui fait appel à la géolocalisation.
    J'ai récupéré des infos via des tutos car je ne connaissais rien en java et android. Je suis plutôt développeur C et C++.
    J'affiche bien la carte et je peux suivre ma position.
    Lorsque j'appuis sur un bouton je veux avoir la longitude et latitude du téléphone afin de mettre un marker.

    Cela marche bien sauf que parfois mon marker ne se met pas là ou je me trouve.
    Normalement mon marker devrait se mettre là ou il y a le point bleu de google maps.

    Je récupère ma position par la méthode onLocationChanged(Location location) qui se lance régulièrement via la méthode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER))
                locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 10000, 200, this);
    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 10000, 200, this);
    Je voudrais savoir s'il y a une méthode qui permet de récupérer ma position lorsque je clique sur un bouton car a part getLastKnownLocation(provider) qui donne la dernière position je n'ai rien trouvé.

    Merci

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 476
    Par défaut
    Bonjour,

    Il me semble que le point bleu présente ta position sur la carte mais ne sauvegarde pas ta position. Après, il faut savoir que la précision du GPS n'est que de 5-10m, et varie énormément d'un téléphone à un autre, et encore plus si tu es à l’intérieur. Tu peux toujours utiliser un listener sur le changement des coordonnées gps : https://developer.android.com/guide/...trategies.html

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 18
    Par défaut
    Salut,
    Merci pour ta réponse mais c'est ce que j'utilise.
    Je fais des updates de positions via un listener et à un moment donné je veux mettre un marquer à l'endroit ou je me trouve c'est-à-dire à l'endroit du point bleue. Je récupere donc la longitude et la latitude via mylocation et qui a été mis a jour dans le onlocationchanged et je met le marqueur et parfois mon marqueur ne se met pas sur le point bleue. Je ne sais pas s il se met sur la derniere position connue si la mise a jour n a pas ete faite ou s il se met n importe ou.

    Je veux mettre le marqueur sur mon point bleue lorsque l utilisateur clique sur un bouton. Donc je me demandais si lorsque l'utilisateur clique sur le bouton il n y a pas une méthode qui récupere ma position actuelle en fait une méthode qui récupère la position du point bleue ?

    Merci

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 18
    Par défaut
    Salut,

    Je suis toujours sur ce problème....

    mon but est lorsque l'utilisateur clique sur un bouton, mettre un marqueur sur la carte sur le lieu ou je me trouve.
    Lorsque je clique sur le bouton si ma position n'a pas été mise à jour dans onLocationChanged mon marqueur se met sur la dernière position connue. Il ne se met donc pas sur le point bleu qui représente ma position.

    Comment faire pour récupérer ma position lorsque je clique sur le bouton ou plus simple comment faire pour récupérer les coordonnes du point bleu, comme ça je suis sur que mon marqueur se mettra toujours sur ma position?

    Merci

  5. #5
    Membre chevronné Avatar de Drowan
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2014
    Messages
    460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2014
    Messages : 460
    Par défaut

    Si tu veux récuperer ta position courante (= dernière position connue du système) utilise getLastKnownLocation() sur ton GPS provider.

    Si cette dernière pocition n'est pas à jour, c'est que le onLocationChanged() de ton listener n'a pas était déclenchée. (Je crois que tu peut définir une précision forte à ton GPS provider, ce qui fait qu'il repère des changements plus souvent).

    Tu peux aussi forcer les mises à jour en appelant locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mListener);

    source : ici

  6. #6
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Si tu veux de la précision n'utilise pas le NETWORK_PROVIDER qui à l'avantage d'être peu énergivore mais également peu précis (ca peut être une différence de plusieurs centaines de mètres , voir kilomètre selon le maillage réseau).

    Donc la technique du listener avec un GPS_PROVIDER est la bonne solution.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 18
    Par défaut
    Bonjour,

    merci, je n'utilise donc plus que le GPS_PROVIDER et je met a jour ma position tout le temps avec locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mListener);

    J'ai fait quelques tests et ça a l air de mieux fonctionner mais pour valider il faut que je teste dehors car chez moi c'est pas possible, le GPS nde passe pas.


    Mais est ce que ce n'est pas grave que le onLocationChanged() va s'exécuter sans arrêt car mon appli sera utilisé pour des déplacements en voiture. n'est ce pas ernergivore?

    Mais c'est quand même fou qu'il n'y ait pas une méthode qui permet de récupérer la latitude et longitude du point bleu....
    Merci

Discussions similaires

  1. [LabVIEW 8.6] Obtenir une position GPS et l'afficher
    Par K-RK-S dans le forum LabVIEW
    Réponses: 32
    Dernier message: 28/04/2009, 16h48
  2. JQUERY - connaitre position drag
    Par oulahoup dans le forum jQuery
    Réponses: 2
    Dernier message: 12/03/2009, 21h50
  3. Comparer une position GPS avec une liste de POI
    Par alain.lc dans le forum Débuter
    Réponses: 3
    Dernier message: 02/10/2008, 09h47
  4. Combien ca coute une position gps
    Par moutey dans le forum Composants
    Réponses: 7
    Dernier message: 21/04/2008, 13h44
  5. Capturer Position GPS via un récepteur intégré
    Par dams95190 dans le forum Java ME
    Réponses: 2
    Dernier message: 28/02/2008, 09h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo