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 :

Problème récupération coordonnées GPS


Sujet :

API standards et tierces Android

  1. #41
    Membre éclairé

    Homme Profil pro
    Développeur mobile iOS / Android
    Inscrit en
    Décembre 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur mobile iOS / Android
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 259
    Points : 690
    Points
    690
    Par défaut
    Citation Envoyé par eristoff72 Voir le message
    Bonjour,
    J'ai un petit problème de pas grand chose, quand je test mon application depuis l'émulateur il me demande de mettre à jours Google Play Service alors que c'est déjà fait.
    Si je test sur mon téléphone ma map ne s'affiche pas entièrement mais jsute le logo de google en bas à gauche.
    Regardes si tu as renseignés les permissions dans ton manifest pour android.permission.ACCESS_COARSE_LOCATION et android.permission.ACCESS_FINE_LOCATION et que tu as aussi demandé les droits explicitement dans ton code.
    « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell

    N'oubliez pas de consulter les FAQ Swift, Android
    Tutoriel : Développer une application multilingue sous iOS

  2. #42
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Pour les droits dans le Manifest c'est bon.
    Cependant pour les droits je vais aller voir ton lien.
    J'ai ça aussi comme erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    E/Google*Maps*Android*API: Authorization failure.  Please see https://developers.google.com/maps/documentation/android-api/start for how to correctly set up the map.
    E/Google*Maps*Android*API: In the Google Developer Console (https://console.developers.google.com)
                               Ensure that the "Google Maps Android API v2" is enabled.
                               Ensure that the following Android Key exists:
                               	API Key: AIzaSyAQfPdJIoAbdLnH_IObskkay5VKQATM8Ac
                               	Android Application (<cert_fingerprint>;<package_name>): 45:16:9A:8E:7C:97:89:43:B0:D9:7B:29:46:39:EB:36:64:73:C3:F9;com.example.etc...
    Elle paraît assez claire, mas pour moi Google Maps Android API v2 est déjà activé.

  3. #43
    Membre éclairé

    Homme Profil pro
    Développeur mobile iOS / Android
    Inscrit en
    Décembre 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur mobile iOS / Android
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 259
    Points : 690
    Points
    690
    Par défaut
    Il faut vraiment demander les permission explicitement dans ton code sinon ça ne marchera pas si tu exécutes ton application à partir d'Android 5.0 et plus.
    Ensuite assure toi que la configuration dans ton google console est correcte. Si tu respectes tout ceci il n'y a pas de raison que ça ne fonctionne pas.
    « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell

    N'oubliez pas de consulter les FAQ Swift, Android
    Tutoriel : Développer une application multilingue sous iOS

  4. #44
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Oui je test dans l'activity principal, par contre je n'avais pas mis le message d'erreur quand je test depuis l'emulation

    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
     
    E/DeferredLifecycleHelper: Failed to start resolution intent
                               android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=market://details?id=com.google.android.gms&pcampaignid=gcore_10084000--com.example.etc..1 flg=0x80000 pkg=com.android.vending }
                                   at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1809)
                                   at android.app.Instrumentation.execStartActivity(Instrumentation.java:1523)
                                   at android.app.Activity.startActivityForResult(Activity.java:4225)
                                   at android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:50)
                                   at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:79)
                                   at android.app.Activity.startActivityForResult(Activity.java:4183)
                                   at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:859)
                                   at android.app.Activity.startActivity(Activity.java:4522)
                                   at android.app.Activity.startActivity(Activity.java:4490)
                                   at com.google.android.gms.dynamic.zza$5.onClick(Unknown Source)
                                   at android.view.View.performClick(View.java:5637)
                                   at android.view.View$PerformClick.run(View.java:22429)
                                   at android.os.Handler.handleCallback(Handler.java:751)
                                   at android.os.Handler.dispatchMessage(Handler.java:95)
                                   at android.os.Looper.loop(Looper.java:154)
                                   at android.app.ActivityThread.main(ActivityThread.java:6119)
                                   at java.lang.reflect.Method.invoke(Native Method)
                                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
                                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

  5. #45
    Membre éclairé

    Homme Profil pro
    Développeur mobile iOS / Android
    Inscrit en
    Décembre 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur mobile iOS / Android
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 259
    Points : 690
    Points
    690
    Par défaut
    Teste sur un vrai appareil, Google Android Map API v2 ne fonctionne pas avec l'émulateur Android. à moins de l'importer dans l'émulateur.
    « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell

    N'oubliez pas de consulter les FAQ Swift, Android
    Tutoriel : Développer une application multilingue sous iOS

  6. #46
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Je me pose la question pour cette parti là:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    if (ActivityCompat.shouldShowRequestPermissionRationale(this,
                    Manifest.permission.READ_CONTACTS)) {
               //Cela signifie que la permission à déjà était 
               //demandé et l'utilisateur l'a refusé
               //Vous pouvez aussi expliquer à l'utilisateur pourquoi
               //cette permission est nécessaire et la redemander
            } else {
                //Sinon demander la permission
                ActivityCompat.requestPermissions(this,
                        new String[]{Manifest.permission.READ_CONTACTS},
                        MY_PERMISSIONS_REQUEST_READ_CONTACTS);
            }
    "MY_PERMISSIONS_REQUEST_READ_CONTACTS" Si au lieu de demander ce type de permission "READ_CONTACTS" je demande "ACCESS_COARSE_LOCATION" , qu'est-ce-que je dois mettre ?
    Je bloque sur un rien du tout..

    Voilà ma parti de code à moi:

    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
    29
    30
    31
    32
    33
    34
     
    if(!runtime_permissions());
                enabled_buttons();
     
            // Assume thisActivity is the current activity
            int permissionCheck = ContextCompat.checkSelfPermission(LocalisationGPSActivity.this,
                    Manifest.permission.ACCESS_COARSE_LOCATION);
     
            // Here, thisActivity is the current activity
            if (ContextCompat.checkSelfPermission(LocalisationGPSActivity.this,
                    Manifest.permission.ACCESS_COARSE_LOCATION)
                    != PackageManager.PERMISSION_GRANTED) {
     
                // Should we show an explanation?
                if (ActivityCompat.shouldShowRequestPermissionRationale(LocalisationGPSActivity.this,
                        Manifest.permission.ACCESS_COARSE_LOCATION)) {
     
                    // Show an explanation to the user *asynchronously* -- don't block
                    // this thread waiting for the user's response! After the user
                    // sees the explanation, try again to request the permission.
     
                } else {
     
                    // No explanation needed, we can request the permission.
     
                    ActivityCompat.requestPermissions(LocalisationGPSActivity.this,
                            new String[]{Manifest.permission.ACCESS_COARSE_LOCATION},
                            PERMISSION_LOCATION_REQUEST_CODE);
     
                    // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
                    // app-defined int constant. The callback method gets the
                    // result of the request.
                }
            }
    et ma fonction "onRequestPermissionsResult"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
        @Override
        public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
            super.onRequestPermissionsResult(requestCode, permissions, grantResults);
            if(requestCode == 100){
                if( grantResults[0] == PackageManager.PERMISSION_GRANTED && grantResults[1] == PackageManager.PERMISSION_GRANTED){
                    enabled_buttons();
                }else {
                    runtime_permissions();
                }
            }
        }

Discussions similaires

  1. java Android - Problème de récupération de coordonnées gps
    Par android59 dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 30/06/2020, 16h14
  2. [WD17] Récupération des coordonnées GPS
    Par thierrybatlle dans le forum WinDev
    Réponses: 6
    Dernier message: 08/01/2016, 12h11
  3. Problème et Idée Coordonnées GPS
    Par sammmir dans le forum API standards et tierces
    Réponses: 0
    Dernier message: 28/05/2014, 08h49
  4. [Google Maps] Récupération coordonnées gps pour itinéraire
    Par Rhino Onizuka dans le forum APIs Google
    Réponses: 3
    Dernier message: 02/02/2014, 18h26
  5. Récupération de coordonnées GPS dans le onCreate
    Par thefranchise dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 16/12/2012, 14h55

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