// 네이티브(안드로이드) 구글 로그인 래퍼 — Capacitor Credential Manager 기반. // 웹/Electron 에서는 GIS(웹) 방식을 쓰므로 여기선 네이티브 전용. 플러그인은 지연 import. import { Capacitor } from '@capacitor/core' // 네이티브 플랫폼(안드로이드 APK)에서만 네이티브 구글 로그인을 사용한다. export function isNativeGoogle() { return Capacitor.isNativePlatform() } let initializedClientId = null // 웹 클라이언트 ID(서버에서 받은 값)로 네이티브 구글 로그인을 수행하고 ID 토큰을 반환한다. // 반환된 ID 토큰의 aud 는 웹 클라이언트 ID 라서 백엔드 /api/auth/google 가 그대로 검증한다. export async function nativeGoogleIdToken(clientId) { const { GoogleSignIn } = await import('@capawesome/capacitor-google-sign-in') // initialize 는 한 번만(같은 clientId 면 재호출 생략) if (initializedClientId !== clientId) { await GoogleSignIn.initialize({ clientId }) initializedClientId = clientId } const res = await GoogleSignIn.signIn() return res?.idToken || null }