2012-07-02 15 views
28

Intenté crear una identificación de cliente de prueba para una aplicación de Android que utiliza OAUTH 2.0 como inicio de sesión para recuperar el perfil de usuario. Seguí los pasos para completar la creación de la identificación del cliente en la consola de google, pero no veo en ningún lado el secreto del cliente. Estoy intentando ayudar a mi empleador a obtener credenciales de Google para su aplicación. Sé cómo implementar OAUTH 2.0 en Android, pero necesito el secreto del cliente para intercambiar el código con token de acceso.Consola de API de Google: falta de secreto de cliente

Primero, seleccioné "API de Google+" en la pestaña Servicios. Luego siguió los pasos en pantalla desde la pestaña de Acceso a la API. enter image description here

+0

Creé una nueva cuenta de servicio, descargué un nuevo JSON, después de eso todo funcionó. – MingalevME

Respuesta

22

Parece que Google finalmente abandonó el unnecessary client_secret for installable applications y aún no está actualizado con su documentación. Debe verificar si ya obtiene un access_token en la solicitud inicial de OAuth like it's handled on Facebook.

Otra posibilidad sería recurrir al uso de un Simple API Access key.

Actualización:

Primer método parece no funcionar con Google.

La forma recomendada para Android es usar AccountManager en lugar de preparar sus propias solicitudes. Siga this example para ver cómo se implementa esto y cómo obtiene un AuthToken usando una clave de acceso API simple. En lugar de utilizar la API de tareas, puede incluir la biblioteca OAuth2 API para recuperar la información del usuario.

+0

No funciona solo con access_code. Cadena authorizationUrl = new GoogleAuthorizationCodeRequestUrl ( \t \t \t \t OAuth2ClientCredentials.CLIENT_ID, \t \t \t \t OAuth2ClientCredentials.OAUTH_CALLBACK_URL, v) .build(); –

+0

y mWebView.loadUrl (authorizationUrl); –

+0

arriba proporcionará el código de acceso, pero necesito el token de acceso y necesito el secreto del cliente para intercambiar el código del token de acceso. ¿Hay alguna otra solución además de usar una clave de acceso API simple? Necesito obtener el perfil de usuario –

9

Haga clic en "Descargar JSON" ¿Es lo que está buscando? enter image description here

+1

¡Salud, encontré los secretos dentro de mi JSON! – Jack

+13

lo descargué. pero, no encontré identificación secreta. ¿Cómo puedo obtener – harikrishnan

+0

@Jack? Tampoco lo encontré. – curiousMind

-2

Otra solución es que usted tiene que crear un ID de cliente con el tipo de "aplicación instalada", entonces tendrá el cliente secreto

2

Hoy mismo me enteré de que en la nueva consola de la nube podemos ver el secreto del cliente para las aplicaciones de Android: mientras que en la vieja consola de Google simplemente no podemos.

Para utilizar la nueva consola de la nube, simplemente haga clic en el mensaje "Estamos mejorando la experiencia. Pruebe la nueva consola de la nube". Google pedirá una confirmación por SMS. Ahora va a ser redirigido a the new cloud console

click this message to use the new cloud console

Ahora, sólo tiene que seleccionar su proyecto, haga clic en "Aplicaciones registrado" en el menú de la izquierda, selecciona la aplicación de Android, y listo, en OAuth 2.0 Id Client' Veré tu secreto de cliente. No tengo idea de por qué en la vieja consola de Google no se muestra, pero si realmente necesitas una clave secreta de cliente, está ahí.

here we can see the client secret for android apps

+0

No hay una opción de "Aplicaciones registradas" de mi parte. ¿Qué debo hacer para verlo? – marienke

0

source dijo que: Visita la Consola para programadores de Google para obtener credenciales de OAuth 2.0 como un secreto ID de cliente y el cliente que se sabe que tanto Google como su aplicación. El conjunto de valores varía según el tipo de aplicación que esté creando. Por ejemplo, una aplicación JavaScriptno requiereun secreto, pero una aplicación de servidor web sí lo hace.

3

Dado que casi todo desde la respuesta aceptada ha quedado en desuso, pensé en compartir lo que he encontrado.

Necesitaba la API People que requiere un secreto de cliente. Lo que Google recomienda para el uso de personas con API de Android es,

Seleccione el tipo de aplicación Otros, introduzca el nombre "La gente API de inicio rápido", y haga clic en el botón Crear.

encontrado aquí: https://developers.google.com/people/quickstart/java (Paso 1 parte e)

Así que si usted necesita una clave secreta de cliente, es posible considerar el uso del tipo Otros. Por supuesto, primero siga la documentación de su API específica.

+0

¡¡Buen amigo !! Voy a intentar con eso. Gracias – curiousMind

+0

¿Está funcionando para Android? – curiousMind

Cuestiones relacionadas