Je suis passé par this , et en ce qui concerne le processus, je l'ai fait.
Mais lorsque j'installe l'application depuis Play Store, je ne parviens pas à me connecter à l'aide du google sign in
bouton.
J'ai utilisé Firebase pour se connecter à Google. Lorsque je clique sur le bouton de connexion, l'option de choisir le compte arrive, mais il ne se connecte pas ou ne fait rien.
Alors, où est-ce que je me trompe?
Lorsque vous téléchargez une apk sur le Play Store, le Play Store crée une nouvelle clé SHA1 appelée "Certificat de signature d'application". Vous obtenez ce SHA1 et enregistrez dans votre console ou votre compte Firebase (selon vos besoins).
Le nouveau SHA1 se trouvera dans Released Management -> App Sigining sur votre console de jeu.
[]
Mise à jour: Google a changé le comportement de téléchargement de l'APK, vérifiez la réponse ci-dessous!
Release APK and debug APK has different SHA1 and different API keys for google services. Les deux doivent être ajoutés dans Firebase Console -> Paramètres du projet. Téléchargez ensuite google-services.json
à partir d'ici, ajoutez-le au projet et recompilez-le avec le magasin de clés de libération en utilisant l'option "Créer un fichier APK signé". Cela devrait fonctionner
Le problème a été créé lorsque la signature d'application Google Play a été activée pour mon application. La signature de l'application Google Play modifie l'empreinte digitale du certificat SHA-1 (de ce qui se trouve dans mon magasin de clés) en leur propre empreinte digitale de certificat SHA-1.
Le correctif:
Vous verrez "Certificat de signature d'application" et "Télécharger le certificat"
Tout est réparé!
1) lorsque vous créez/publiez une application via la console Google Play, il existe une option pour activer la signature d'application Google Play. si vous l'activez, il s'affichera
La signature d'application Google Play est activée pour cette application.
alors les détails de votre certificat de téléchargement vont changer et vous devez réécrire les détails du certificat SHA-1 etc. dans les endroits respectifs.
2) Vous avez fourni débogage magasin de clés/détails du certificat SHA-1 au lieu de RELEASE détails du certificat
3) erreur lors de la génération des certificats.
1) Allez sur console Google Play
Gestion Relese -> Signature d'application
alors vous pouvez voir deux types de certificats
1- Téléchargez le certificat (votre certificat d'application fourni lors de la génération d'apk signé)
2- Certificat de signature d'application (car vous avez activé la signature d'application Google Play, ils ont donc fourni de nouveaux détails de certificat pour votre apk publié)
vous devez modifier les détails du certificat téléchargé avec de nouveaux détails fournis par google play là où vous l'avez utilisé auparavant. comme l'intégration de la connexion Google (changer SHA-1 de client OAuth ), la connexion Facebook (changer hachage de clé (générer un hachage de clé à l'aide de SHA-1, utiliser ceci lien ou copiez le hachage de clé fourni par l'écran d'erreur de connexion facebook), firebase etc.
2) fournir la version SHA-1/keyHash
créer /utiliser les détails du magasin de clés de l'apk signé.
en utilisant l'invite de commande:
google/firebase SHA-1:
keytool -exportcert -keystore path-to-debug-or-production-keystore -list -v
hachage de clé de libération facebook:
keytool -exportcert -alias <user alias name> -keystore < keystore path> | <openssl-path> sha1 -binary | <openssl-path> base64
si un mot de passe vous est demandé, entrez votre mot de passe de magasin de clés apk signé.
Il existe trois types de SHA1 requis pour le cycle de vie d'une application lorsque vous utilisez Firebase
Vous devez ajouter la signature SHA1 à Firebase après avoir publié votre application ici. Je joins deux captures d'écran, veuillez jeter un œil. Les certificats marqués en rouge doivent être requis
Si vous avez activé "Signature de l'application Google Play" lors de la publication de votre application, vous avez probablement affaire à deux empreintes digitales:
Celui provenant de votre magasin de clés local (keytool -exportcert -keystore path-to-production-keystore -list -v), connu sous le nom de "upload cert".
Le nouveau généré par Google lorsque vous avez activé la signature (le "certificat de signature").
Le conflit avec cette situation est que vous pouvez vous retrouver avec deux OAuth 2.0 ID client:
Celle que vous avez créée avant de publier votre application (et avant d'activer la signature Google), qui est en effet la "bonne".
UN NOUVEAU créé par Google lorsque vous avez activé la signature Google.
Vous pouvez vérifier ce fait à partir de: Console Google Play -> Services de jeux -> Sélectionnez votre application -> Projet de console API -> Informations d'identification -> OAuth 2.0 ID client
SOLUTION
Pour que la connexion à Google (et toutes les fonctionnalités des services de jeux associées) fonctionne, j'ai dû corriger l'empreinte digitale de mon ID client OAuth2 préexistant (celui que j'ai créé avant de publier mon application).
Recherchez le "bon" OAuth 2.0: console Google Play -> Services de jeux -> Sélectionnez votre application -> Applications liées -> Sélectionnez votre application -> Prenez note du " ID client OAuth2 "en bas.
Recherchez le certificat "Signature": Console Google Play -> Services de jeux -> Sélectionnez votre application -> Projet de console API -> Informations d'identification -> OAuth 2.0 ID client -> "Client Android pour XXXXXX (création automatique par Google Service) "-> Prendre note de la valeur (xx: xx: xx: etc ....) Commentaire: Afin de réutiliser cette valeur dans mon autre OAuth = ID client 2.0, j'ai dû le remplacer par un numéro fictif. Sinon, vous obtiendrez l'erreur: "Certificat déjà utilisé dans un autre projet".
Accédez à votre ID client OAuth2 préexistant: console Google Play -> Services de jeux -> Sélectionnez votre application -> Projet de console API -> Informations d'identification -> OAuth 2.0 ID client -> Sélectionnez " ID client OAuth 2.0 "de l'étape 1. Mettez à jour la valeur du certificat avec celle de l'étape 2.
Cela a résolu mon problème. Le multijoueur fonctionne parfaitement dans mon application (Match4App).
Pour ajouter des réponses existantes, une fois que vous avez le SHA1 nouvellement créé:
Goto https://console.firebase.google.com :