Google Configuración de inicio de sesión
Introducción
Section titled “Introducción”En esta guía, aprenderá cómo configurar el inicio de sesión Google con el inicio de sesión social Capgo. Necesitará lo siguiente para configurar Google Iniciar sesión:
- Una cuenta Google
Configuración general
Section titled “Configuración general”En esta parte, configurará la pantalla de inicio de sesión que muestra Google.
- Vaya a console.cloud.google.com
- Haga clic en el selector de proyectos.

- Si aún no tienes un proyecto, crea un proyecto nuevo.
- Haga clic en
Nuevo proyecto
- Asigne un nombre a su proyecto y haga clic en
Create.
- Asegúrese de estar en el proyecto correcto

- Haga clic en
- Comience a configurar el
OAuth consent screen-
Haga clic en la barra de búsqueda

-
Busque
OAuth consent screeny haga clic en él.
-
Configurar la pantalla de consentimiento
Asumiré que estás desarrollando una aplicación abierta al público, por lo que usaré el tipo de usuario
external. Seleccione el tipo de usuario que más le convenga Y haga clic encreateHaga clic en
create
-
- Completa la información sobre tu aplicación.
-
Comencemos con la “Información de la aplicación”.

- Por favor escriba su
Nombre de la aplicación:::precaución ESTO SERÁ MOSTRADO A LOS USUARIOS ::: - Ingrese el
correo electrónico de soporte al usuarioPuede obtener más información sobre el correo electrónico de soporte aquí
-
PUEDES agregar el logotipo de la aplicación.

Esto no es obligatorio y me saltaré este paso.
-
DEBE configurar el
Dominio de la aplicación
No haré eso porque es solo una demostración simple que NO se publicará, pero recomiendo encarecidamente completar esta sección.
-
TIENES QUE proporcionar el correo electrónico del desarrollador.

-
Haga clic en
guardar y continuar
- Por favor escriba su
-
- Configurar los ámbitos
-
Haga clic en “agregar o eliminar ámbitos”.

-
Seleccione los siguientes ámbitos y haga clic en
update
-
Haga clic en
guardar y continuar
-
- Agregue un usuario de prueba
- Haga clic en
agregar usuarios
- Ingrese su correo electrónico de Google, presione Enter y haga clic en
add
- Haga clic en
guardar y continuar
- Haga clic en
- Haga clic en
volver al panel
- Envíe su aplicación para verificación
Diferencias entre acceso online y acceso offline
Section titled “Diferencias entre acceso online y acceso offline”Existen varias formas de usar Google Login con Capacitor. Esta tabla resume las diferencias entre ambas:
| Acceso online | Acceso offline | |
|---|---|---|
| Requiere backend | ❌ | ✅ |
| Token de acceso duradero | ❌ | ✅ |
| Configuración sencilla | ✅ | ❌ |
Si todavía no sabes cuál elegir, considera estos escenarios:
-
Quieres que el usuario inicie sesión y después emitirle un JWT personalizado. Tu app NO llamará a las APIs de Google
En este caso, elige acceso online.
-
Tu app llamará a algunas APIs de Google desde el cliente, pero nunca desde el backend
En este caso, elige acceso online.
-
Tu app llamará a algunas APIs de Google desde el backend, pero solo cuando el usuario esté usando activamente la app
En este caso, elige acceso online.
-
Tu app comprobará periódicamente el calendario del usuario, incluso cuando no esté usando activamente la app
En este caso, elige acceso offline.
Un backend de ejemplo para acceso online
Section titled “Un backend de ejemplo para acceso online”En esta parte del tutorial mostraré cómo validar al usuario en tu backend.
Este ejemplo será muy sencillo y estará basado en las siguientes tecnologías:
Puedes encontrar el código de este ejemplo aquí
Como puedes ver:

La idea es bastante simple. Envías una petición GET a https://www.googleapis.com/oauth2/v3/tokeninfo y eso te devuelve si el token es válido o no. Si lo es, también te da el correo electrónico del usuario y otra información sobre su token.

A partir de ahí, puedes emitir tu propio JWT al usuario o algún tipo de cookie de sesión. Las posibilidades son amplias para la implementación final de autenticación.
Si quieres llamar a las APIs de Google, te recomiendo revisar Google OAuth 2.0 Playground. Desde ahí puedes ver fácilmente qué APIs puedes llamar.
Usando el acceso offline con tu propio backend
Section titled “Usando el acceso offline con tu propio backend”Para utilizar el acceso online necesitarás lo siguiente:
- Un servidor HTTP
En este ejemplo, utilizaré las siguientes tecnologías para proporcionar acceso offline en mi aplicación:
-
LowDb (una base de datos simple)
El código de este ejemplo se puede encontrar aquí
En cuanto al código del cliente, se ve así:
import { Capacitor } from '@capacitor/core';import { GoogleLoginOfflineResponse, SocialLogin } from '@capgo/capacitor-social-login';import { usePopoutStore } from '@/popoutStore'; // <-- specific to my app
const baseURL = "[redacted]";
async function fullLogin() { await SocialLogin.initialize({ google: { webClientId: '[redacted]', iOSClientId: '[redacted]', iOSServerClientId: 'The same value as webClientId', mode: 'offline' // <-- important } }) const response = await SocialLogin.login({ provider: 'google', options: { forceRefreshToken: true // <-- important } })
if (response.provider === 'google') { const result = response.result as GoogleLoginOfflineResponse const res = await fetch(`${baseURL}/auth/google_offline`, { headers: { "Content-Type": "application/json" }, body: JSON.stringify({ serverAuthCode: result.serverAuthCode, platform: Capacitor.getPlatform() }), method: "POST" })
if (res.status !== 200) { popoutStore.popout("Full google login failed", "check console"); return }
const { jwt } = await res.json(); const userinfo = await fetch(`${baseURL}/auth/get_google_user`, { headers: { Authorization: `Bearer ${jwt}` } }) if (userinfo.status !== 200) { popoutStore.popout("Full google (userinfo) login failed", "check console"); return } popoutStore.popout("userinfo res", await userinfo.text()); }}