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 :

[Android 4.2.2 / GPS] onLocationChanged() jamais appelé


Sujet :

API standards et tierces Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Octobre 2012
    Messages : 172
    Par défaut [Android 4.2.2 / GPS] onLocationChanged() jamais appelé
    Bonjour à tous

    J'ai un problème assez bizarre avec la geolocalisation dans une de mes applications :
    - je veux récupérer la position du device (LocationManager)

    - cela marche sur mon galaxy S3 (Android v4.1.2)
    - mais pas sur mon galaxy S4 (Android v4.2.2) !!!

    voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    protected void getPosition() { 
            LocationManager objgps =                (LocationManager)getSystemService(Context.LOCATION_SERVICE);
            MyGPSListener gpsListener = new MyGPSListener(objgps);
            objgps.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0,         gpsListener);
    }
     
    private class MyGPSListener implements LocationListener{
        private LocationManager LM;
        boolean isGPSEnabled = false;
        boolean isNetworkEnabled = false;
        boolean canGetLocation = false;
     
        public MyGPSListener(LocationManager LM) {
                this.LM = LM;
                isGPSEnabled = LM.isProviderEnabled(LocationManager.GPS_PROVIDER);
                Log.i("GPSenabled", "> "+isGPSEnabled);
     
                isNetworkEnabled=LM.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
                Log.i("NETWORKenabled", "> "+isNetworkEnabled);
     
        }
        @Override
        public void onLocationChanged(Location location) {
                MainActivity.currenGeoLocation = location;
                Toast.makeText(getApplicationContext(), "Votre position : "+location.getLatitude()+" --             "+location.getLongitude(), Toast.LENGTH_LONG).show();
                LM.removeUpdates(this);
    }
    pour info, les 2 booléens isGPSEnabled & isNetworkEnabled sont tous les 2 à true sur le galaxy S4 comme sur le S3.
    Simplement, le onLocationChanged() n'est jamais appelé sur le S4 (4.2.2) et le loader tourne indéfiniment.

    J'ai parcouru pas mal de posts notemment sur SOF mais même si beaucoup de gens eprouvent les mêmes difficultés que moi, je n'ai encore trouvé aucune solution!

    Je post donc ici au cas où quelqu'un connaitrait la solution??
    D'avance merci,

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Par défaut
    L'option "Services de localisation Google" est-elle activée dans les paramètres de ton S4 ?

Discussions similaires

  1. Réponses: 5
    Dernier message: 11/03/2013, 16h50
  2. [JSF] Action methods jamais appelées
    Par mauvais_karma dans le forum JSF
    Réponses: 4
    Dernier message: 15/05/2007, 16h05
  3. Réponses: 7
    Dernier message: 19/04/2007, 18h54
  4. methode paint jamais appeller.
    Par Blo0d4x3 dans le forum 2D
    Réponses: 9
    Dernier message: 22/01/2006, 22h44
  5. [ Struts ] Erreur : l'action n'est jamais appelé
    Par romain3395 dans le forum Struts 1
    Réponses: 3
    Dernier message: 25/06/2004, 14h59

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