From 885427fa856f2d220ec329b325f98247bb5bd52d Mon Sep 17 00:00:00 2001 From: Mo Tarbin Date: Thu, 16 Jul 2026 19:40:34 -0400 Subject: [PATCH] fix(ios): register Google Sign-In URL scheme to prevent launch crash Merge duplicate CFBundleURLTypes entries in Info.plist so the Google reversed-client-ID scheme and the donetick deep-link scheme coexist. The second entry was overriding the first, causing GIDSignIn to throw NSInvalidArgumentException for a missing URL scheme. --- ios/App/App/App.entitlements | 10 ++++++---- ios/App/App/Info.plist | 15 ++++++--------- src/views/Authorization/LoginView.jsx | 5 +---- 3 files changed, 13 insertions(+), 17 deletions(-) diff --git a/ios/App/App/App.entitlements b/ios/App/App/App.entitlements index 17cd619..7808a07 100644 --- a/ios/App/App/App.entitlements +++ b/ios/App/App/App.entitlements @@ -2,15 +2,17 @@ - com.apple.developer.nfc.readersession.formats - - TAG - aps-environment development com.apple.developer.applesignin Default + com.apple.developer.nfc.readersession.formats + + NDEF + PACE + TAG + diff --git a/ios/App/App/Info.plist b/ios/App/App/Info.plist index 276929d..b960eaf 100644 --- a/ios/App/App/Info.plist +++ b/ios/App/App/Info.plist @@ -20,15 +20,6 @@ APPL CFBundleShortVersionString $(MARKETING_VERSION) - CFBundleURLTypes - - - CFBundleURLSchemes - - com.googleusercontent.apps.682262497914-5dacpk46qcc1494lood6ch8ul9c83kop - - - CFBundleVersion $(CURRENT_PROJECT_VERSION) LSRequiresIPhoneOS @@ -78,6 +69,12 @@ donetick + + CFBundleURLSchemes + + com.googleusercontent.apps.682262497914-5dacpk46qcc1494lood6ch8ul9c83kop + + diff --git a/src/views/Authorization/LoginView.jsx b/src/views/Authorization/LoginView.jsx index ebe6c45..3fe8a79 100644 --- a/src/views/Authorization/LoginView.jsx +++ b/src/views/Authorization/LoginView.jsx @@ -701,10 +701,7 @@ const LoginView = () => { sx={{ mt: 3, mb: 2 }} onClick={async () => { try { - // Clear any cached session so the account picker shows - await SocialLogin.logout({ provider: 'google' }).catch( - () => {}, - ) + const user = await SocialLogin.login({ provider: 'google', options: { scopes: ['profile', 'email', 'openid'] },