IOS/swift
iOS 구글 로그인 연동
내일도이렇게
2024. 1. 21. 13:40
iOS 14 이상 / GoogleSignIn 7.0.0 버전에 대한 구글 로그인 연동
1. GoogleSignIn 설치
pod 'GoogleSignIn', '7.0.0'
2. 파이어베이스 구글 로그인 설정
3. OAuth 클라이언트 ID 만들기
https://developers.google.com/identity/sign-in/ios/start-integrating?hl=ko#get_an_oauth_client_id
iOS 및 macOS용 Google 로그인 시작하기 | Authentication | Google for Developers
이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English 의견 보내기 iOS 및 macOS용 Google 로그인 시작하기 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류
developers.google.com
설정한 프로젝트의 OAuth client 클릭하여 클라이언트 ID 와 iOS URL 스키마 두가지 정보를 저장해둔다.
Info.plist 에 행 추가하여 GIDClientId: 클라이언트 ID 를 추가한다.
프로젝트 > Info >URL Types
+ 버튼으로 추가하여 URL Schemes 에 URL Schemes 에 iOS URL 스키마를 입력한다.
4. 코드 구현하기
// AppDelegate.Swift
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
return GIDSignIn.sharedInstance.handle(url)
}
// 로그인 호출
let googleResult = try await GIDSignIn.sharedInstance
.signIn(withPresenting: self ?? Root.ViewController(viewModel: Root.ViewModel()))
let authentication = googleResult.user
let authIdToken = authentication.idToken
let credential = GoogleAuthProvider.credential(withIDToken: authIdToken?.tokenString ?? "", accessToken: authentication.accessToken.tokenString)
let credentialResult = try await Auth.auth().signIn(with: credential)