본문으로 건너뛰기

구글 (google)

🔔 최신화 일자: 2025-04-24

개요

google 네임스페이스는 구글 네이티브 로그인 기능을 제공하며, 사용자는 Google 계정을 통해 인증할 수 있습니다.
이 네임스페이스를 사용하여 로그인, 사용자 정보 조회, 로그인 상태 확인, 로그아웃과 같은 기능을 수행할 수 있습니다.


필수 선행 작업

nachocode SDK로 구글 네이티브 기능을 사용하기 위해서는 아래 사항이 먼저 완료되어야 합니다.

1. nachocode 대시보드의 [ 앱 설정 > 개발자 설정 > 안드로이드 개발자 설정 ]에서 SHA-1 디지털 지문 확인

nachocode_developer_android_setting

  • (대시보드 5월 업데이트 예정) 지금 사용을 희망하시는 경우 support@nachocode.io로 문의 바랍니다.

2. Firebase 대시보드의 [ 프로젝트 > Authentication > 로그인 방법 ]에서 추가 제공 업체로 [ Google ] 선택

firebase_authentication_login_methods


3. 최신 구성 파일 (google-services.json, GoogleService-Info.plist) 다운로드

firebase_download_services_config


4. nachocode 대시보드의 [ 앱 기능 > 푸시 알림 > 앱 푸시 설정 ]에 업로드

nachocode_google_push_notification_setting


5. nachocode 대시보드의 [ 앱 설정 > 개발자 설정 ]에서 [ 구글 로그인 ] 토글을 활성화하여 앱 설정 완료

nachocode_google_login_toggle

  • (대시보드 5월 업데이트 예정) 지금 사용을 희망하시는 경우 support@nachocode.io로 문의 바랍니다.

메서드 목록

메서드설명추가된 버전
login(callback)구글 네이티브 로그인ver.1.5.0
isLoggedIn(callback)로그인 상태 확인ver.1.5.0
getUserData(callback)사용자 데이터 요청ver.1.5.0
logout(callback)구글 네이티브 로그아웃ver.1.5.0

타입 정의

GoogleResult

구글 로그인 및 요청의 결과 상태를 나타내는 타입입니다.

필드타입설명
status'error' | 'success'요청 성공 또는 실패 상태
statusCodenumber상태 코드 (성공 시 200)
messagestring (optional)오류 메시지 (실패 시 반환)

GoogleUserData

구글 사용자 데이터를 나타내는 타입입니다.

필드타입설명
uidstring사용자 고유 식별자
emailstring이메일 주소 (optional)
displayNamestring사용자 이름 (optional)
photoURLstring프로필 사진 URL (optional)
phoneNumberstring전화번호 (optional)
isEmailVerifiedboolean이메일 인증 여부
providerIdstring인증 제공자 ID (optional)

메서드 상세

login(callback: (result: GoogleResult, idToken?: string, userData?: GoogleUserData) => void): void

  • since ver.1.5.0

설명 (login)

구글 네이티브 로그인 요청을 수행합니다.
로그인 성공 시 idTokenuserData 를 콜백으로 반환합니다.

매개변수 (login)

이름타입필수 여부설명
callback(result: GoogleResult, idToken?: string, userData?: GoogleUserData) => void로그인 결과를 반환하는 함수

반환 값 (login)

해당 메서드는 반환 값을 가지지 않으며, 결과는 callback을 통해 비동기적으로 제공됩니다.

사용 예제 (login)

Nachocode.google.login((result, idToken, userData) => {
if (result.status === 'success') {
console.log('구글 로그인 성공', idToken, userData);
} else {
console.error('구글 로그인 실패', result.message);
}
});

isLoggedIn(callback: (result: GoogleResult, isLoggedIn: boolean, idToken?: string) => void): void

  • since ver.1.5.0

설명 (isLoggedIn)

현재 사용자가 구글 네이티브 로그인 상태인지 확인합니다.
로그인 여부(isLoggedIn)와 함께 idToken을 반환합니다.

매개변수 (isLoggedIn)

이름타입필수 여부설명
callback(result: GoogleResult, isLoggedIn: boolean, idToken?: string) => void로그인 상태를 반환하는 함수

반환 값 (isLoggedIn)

해당 메서드는 반환 값을 가지지 않으며, 결과는 callback을 통해 비동기적으로 제공됩니다.

사용 예제 (isLoggedIn)

Nachocode.google.isLoggedIn((result, isLoggedIn, idToken) => {
if (isLoggedIn) {
console.log('구글 로그인 상태입니다.', idToken);
} else {
console.log('구글에 로그인되어 있지 않습니다.');
}
});

getUserData(callback: (result: GoogleResult, userData?: GoogleUserData) => void): void

  • since ver.1.5.0

설명 (getUserData)

구글에서 사용자 데이터를 요청합니다.
로그인된 사용자의 프로필 정보를 가져올 수 있습니다.

매개변수 (getUserData)

이름타입필수 여부설명
callback(result: GoogleResult, userData?: GoogleUserData) => void사용자 데이터를 반환하는 함수

반환 값 (getUserData)

해당 메서드는 반환 값을 가지지 않으며, 결과는 callback을 통해 비동기적으로 제공됩니다.

사용 예제 (getUserData)

Nachocode.google.getUserData((result, userData) => {
if (result.status === 'success') {
console.log('사용자 데이터:', userData);
} else {
console.error('사용자 데이터 요청 실패:', result.message);
}
});

logout(callback: (result: GoogleResult) => void): void

  • since ver.1.5.0

설명 (logout)

구글 네이티브 로그인 세션을 로그아웃합니다.

매개변수 (logout)

이름타입필수 여부설명
callback(result: GoogleResult) => void로그아웃 결과 콜백

반환 값 (logout)

해당 메서드는 반환 값을 가지지 않으며, 결과는 callback을 통해 비동기적으로 제공됩니다.

사용 예제 (logout)

Nachocode.google.logout(result => {
if (result.status === 'success') {
console.log('구글 로그아웃 완료');
} else {
console.error('구글 로그아웃 실패:', result.message);
}
});

추가 정보

  • Google 로그인은 Firebase 인증 기반으로 동작하며, idToken은 서버 인증에 활용할 수 있습니다.
  • 로그아웃 후에는 isLoggedIn() 호출 시 false가 반환됩니다.