web-dev-qa-db-fra.com

Google Maps ne s'affiche pas en apk signé

Je sais que cette question est courante et que la solution consiste généralement à générer une clé distincte pour la libération. Je l'ai fait plusieurs fois et ma clé API dans la console des développeurs contient deux empreintes SHA1 différentes: une pour le débogage à partir d'AndroidStudio et une pour la libération à partir de mon propre magasin de clés. J'ai signé l'application avec le même magasin de clés et activé l'API v2 de Google Maps Android dans la console. Néanmoins, l'activité des cartes ne montre que l'écran blanc avec «Google» dans le coin inférieur gauche.

Y a-t-il des suggestions pour résoudre le problème?

25
mityakoval

On dirait que vous n’avez que la clé d’API entrée dans le débogage google_maps_api.xml. En outre, il semble que vous utilisiez la même clé API pour le débogage et la publication, mais vous devez toujours la saisir dans le fichier google_maps_api.xml situé sous le dossier de publication et dans le dossier de débogage.

C'est un peu déroutant, car lorsque le projet est en vue Android, vous ne pouvez voir que le fichier de débogage (bien qu'il devrait y avoir (debug) entre parenthèses dans cette vue).

Pour modifier la version, passez en vue Projet à l'aide du menu déroulant situé dans le coin supérieur gauche de l'Explorateur de projets. Ensuite, développez app/src/ et vous verrez les sous-dossiers debug et release. En dessous, vous devriez voir deux fichiers google_maps_api.xml distincts sous debug/res/values et release/res/values.

Assurez-vous que la clé de l'API est renseignée dans le fichier google_maps_api.xml du dossier release/res/values, car il s'agit de celui qui sera utilisé pour l'apk de la version signée.

enter image description here

59
Daniel Nugent

Si vous avez choisi Signature de l'application Google Play, le code SHA-1 de votre application sera différent lors de sa publication.

Étant donné que Google supprime votre certificat importé, puis signez l’application avec un nouveau,

Vous devez donc connaître la nouvelle clé SHA-1.

(Vous n'êtes pas obligé de suivre le journal de publication et de suivre le nouveau SHA-1 généré)}

 enter image description here


Vous pouvez comparer les 2 clés SHA-1.

Origine réponse

19
wajih

J'ai fait beaucoup de choses pour les résoudre, mais toute solution ne résout pas mon problème .__ pour les résoudre, j'ai fait ces choses

  1. Créer un apk signé avec un nouveau fichier de magasin de clés, assurez-vous de le créer en mode édition. 
  2. Après avoir créé l'apk signé, vous devez noter le chemin du magasin de clés dans lequel vous enregistrez votre fichier de magasin de clés.
  3. Vous devez également utiliser votre clé d'API Google Map avec votre mode de publication et le mode de débogage. Vous pouvez utiliser la même clé d'API avec les deux, mais assurez-vous d'ajouter deux clés sha différentes pour votre seule clé API sur la console Google.
  4. Vous devriez aller utiliser le chemin du dossier bin de Java à partir du lecteur c, car l’outil de magasin de clés se trouve dans le dossier bin Supposons donc que votre fichier ressemble à C: doit suivre ce chemin vers votre terminal de studio Android changez le chemin en C:\Program Files\Java\jdk1.8.0_11\bin .__, puis tapez cette commande:

    keytool -list -v -keystore "/Users/NT/Desktop/generalkey.jks"(adress of your keystore file)
    
  5. Maintenant, en faisant cela, vous obtiendrez la clé sha copier cette clé 

  6. Aller à la console google/informations d'identification
  7. Maintenant, allez à votre API, vous verrez l'option d'édition aller pour éditer et coller votre clé sha dans celle-ci et la sauvegarder.
  8. Exécutez votre code.
0
bharat udasi

vous utilisez une version de sha1. vous devez à nouveau générer SHA1 à l'aide de la commande Invite après vous avoir signé apk.

Les étapes pour régénérer SHA1 est d'aller dans cmd et donner la commande comme ci-dessous:

C:\Program Files\Java\jre1.8.0_91\bin>keytool -list -v -keystore 

"C:\Votre chemin d'accès au magasin de clés\keystores\Android.jks"

1) allez à votre Java dans le fichier programme ouvrez la version Java comme jre1.8.0 

2) ouvrez le dossier bin et exécutez la commande comme ci-dessus suivie par votre chemin de magasin de clés que vous avez généré lorsque vous avez généré l'apk signé Après avoir exécuté cette commande sur cmd, vous devez fournir le mot de passe de l'application signée et votre SHA1 sera géraré.

3) copiez le sha1 et collez-le dans console.developer avec le nom de votre paquet dans la clé de votre API.

0
Syed Danish Haider