Comment résoudre socialauth-android (par 3pillarlabs) et les comptes Google/Google+ en utilisant OAuth2.0

StackOverflow https://stackoverflow.com//questions/22038287

Question

Je construis une application Android où les utilisateurs devraient pouvoir se connecter à l'application en utilisant une combinaison e-mail/mot de passe (c'est évident) ou via leur réseau social préféré.

J'ai mis en œuvre le socialAuth bibliothèque pour Android de 3pillarlabs (trouvé sur Github) et ont réussi à implémenter le code de connexion via Facebook et Twitter.C'est simple:vous créez une application, copiez la clé et le secret dans le fichier de propriétés de votre projet Android, ajoutez quelques lignes de code et bam !Vous pouvez vous connecter à l'application en utilisant Facebook ou Twitter.

J'essaye ça avec Comptes Google jugé beaucoup plus difficile parce que le guide qu'ils fournissent est obsolète - il semble utiliser OAuth (version 1) et non OAuth2.0.J'ai eu du mal à comprendre comment procéder avec OAuth2.0 et le socialAuth bibliothèque.Je ne veux pas faire autant de travail que suggéré sur la page de Google pour mise en œuvre de la connexion aux applications avec Google+, s'il ne peut s'agir que de quelques lignes lors de l'utilisation du socialAuth bibliothèque.

Mon principal problème est d'identifier le consumer_secret.Lorsque vous créez une application sur le Console de développement Google, vous êtes dirigé vers un écran où vous activez les API pertinentes, puis vous définissez les autorisations - vous créez un ID client OAuth (qui est votre consumer_key dans le socialAuth fichier de propriétés), mais où trouvez-vous votre consumer_secret?

J'ai appris qu'en utilisant Google+ tu pourrais avoir une sorte de callBack je vous envoie un code d'authentification, mais je ne comprends pas ce qui devrait se passer.

Cette solution aide, mais je ne sais toujours pas où trouver le consumer_secret (apparemment créé à l'étape 1) :

1.  First register your application on Google Cloud console:
  a. Go to https://cloud.google.com/console/project 
  b. Login
  c. Create a new project
  d. APIs & Auth > Credentials
  e. Create New Client ID ( Application Type: Web Application, Authorized redirect URL: http://YOUR_HOST_NAME/socialauth.html)

2.  Modify brickred properties.xml
  Replace 
  <prop key="www.google.com.consumer_key">opensource.brickred.com</prop>
  <prop key="www.google.com.consumer_secret">YC06FqhmCLWvtBg/O4W/aJfj</prop>

  with

  <prop key="googleapis.com.consumer_key">CLIENT ID created in Step 1.e above</prop>
  <prop key="googleapis.com.consumer_secret">Client Secret created in Step 1.e above </prop>

If you are not using Spring, modify oauth_consumer.properties

Modify the link in your application where the user clicks on to start the contacts import process:
change
  ?id=google

to

  ?id=googleplus

Quelqu'un a-t-il mis en œuvre le socialAuth bibliothèque pour Android de 3pillarlabs et compris comment vous connecter à votre application en utilisant Comptes Google ou Google+ et OAuth2.0?Où obtenez-vous le consumer_secret?

Quelque chose qui me laisse perplexe, par exemple, c'est ce qui se trouve dans la documentation de la Google Developer Console concernant Configuration d'OAuth2.0

Configuration d'OAuth 2.0

Pour utiliser OAuth 2.0 dans votre application, vous avez besoin d’un ID client OAuth 2.0, que votre application utilise lors de la demande d’un jeton d’accès OAuth 2.0.Lorsque vous enregistrez une application dans Google Developers Console, vous devez peut générer un ID client OAuth 2.0.

Pour trouver l’ID client et la clé secrète client de votre application, et définir un rediriger l’URI, développez la section ID client OAuth 2.0.

Pour désactiver l'ID client, supprimez l'application de la console des développeurs.

Comment « développer la section ID client OAuth 2.0 » ?Voici une capture d'écran de cet écran :

enter image description here

Était-ce utile?

La solution

J'avais juste ce problème et je viens de le comprendre.Accédez à votre console développeur et cliquez sur les 2 éléments suivants :enter image description here

Le fichier JSON contient votre secret, après la clé « client_secret », et la clé API est répertoriée après « client_id ».Le fichier est un peu difficile à lire, alors copiez le texte du fichier à l'aide du bloc-notes ou autre et collez-le ici :http://jsonviewer.stack.hu/

Il organisera les informations pour vous, puis cliquez sur l'onglet « Visionneuse » et les données seront agréables et faciles à voir, comme ceci :enter image description hereEn faisant cela, cela a fonctionné avec socialauth-android pour moi, en quelque sorte, mais j'ai en fait rencontré une erreur redirect_uri_mismatch après cela, alors faites-moi savoir si vous rencontrez la même chose par la suite.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top