From 213c56f94598915d851b0aa81ed5cf4d61de2b71 Mon Sep 17 00:00:00 2001 From: MartinBraquet Date: Thu, 30 Oct 2025 13:20:27 +0100 Subject: [PATCH] Fix --- web/lib/firebase/users.ts | 2 +- web/pages/_app.tsx | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/web/lib/firebase/users.ts b/web/lib/firebase/users.ts index cc630215..09bbfdab 100644 --- a/web/lib/firebase/users.ts +++ b/web/lib/firebase/users.ts @@ -76,7 +76,7 @@ export const GOOGLE_CLIENT_ID = WEB_GOOGLE_CLIENT_ID * Authenticates a Firebase client running a webview APK on Android with Google OAuth. * * `https://accounts.google.com/o/oauth2/v2/auth?${params}` to get the code (in external browser, as google blocks it in webview) - * Redirects to `com.compassmeet:/auth` (in webview java main activity) + * Redirects to `com.compassmeet://auth` (in webview java main activity) * 'https://oauth2.googleapis.com/token' to get the ID token (in javascript app) * signInWithCredential(auth, credential) to set up firebase user in client (auth.currentUser) * diff --git a/web/pages/_app.tsx b/web/pages/_app.tsx index 578c36b4..b0faf442 100644 --- a/web/pages/_app.tsx +++ b/web/pages/_app.tsx @@ -69,8 +69,11 @@ function MyApp({Component, pageProps}: AppProps) { console.log('Registering OAuth redirect listener for Android WebView') window.addEventListener('oauthRedirect', async (event: any) => { + console.log('Received oauthRedirect event'); console.log('Received oauthRedirect event:', event.detail); - const url = new URL(event.detail); + const detail = typeof event.detail === 'string' ? JSON.parse(event.detail) : event.detail + console.log('OAuth data:', detail); + const url = new URL(detail); const code = url.searchParams.get('code'); if (!code) { @@ -87,7 +90,7 @@ function MyApp({Component, pageProps}: AppProps) { client_id: GOOGLE_CLIENT_ID, code, code_verifier: codeVerifier!, - redirect_uri: 'com.compassmeet:/auth', + redirect_uri: 'com.compassmeet://auth', grant_type: 'authorization_code', }), });