Google 로그인 iOS 및 macOS SDK 출시 노트

10.1.0

  • CocoaPods 배포를 지원 중단합니다. CocoaPods에 게시된 마지막 버전으로, 2026년 12월 2일에 읽기 전용이 됩니다. MIGRATING_FROM_COCOAPODS.md를 사용하여 Swift Package Manager로 이전하세요. (#656)
  • AppCheckCore 12.x를 지원하므로 Swift Package Manager를 사용하는 앱이 이제 Firebase 13으로 업그레이드할 수 있습니다 (podspec은 AppCheckCore 11.x 또는 12.x도 허용함). AppCheckCore 11.x에서는 토큰이나 오류를 반환하지 않는 커스텀 앱 체크 제공자가 이제 성공으로 간주되며 실패한 앱 체크 준비가 더 이상 성공으로 보고되지 않습니다. (#626)
  • GIDGoogleUser의 동시 실행 문제를 해결합니다.
    • 이제 accessToken, refreshToken, idToken, profile의 키-값 관찰자는 이 중 하나가 변경될 때마다 알림을 받으므로 절반만 업데이트된 사용자를 보지 않습니다 (profile는 이전에 알림을 전송하지 않음). 이제 configuration는 사용자가 생성될 때 고정되며, 이후 토큰 업데이트를 반영하지 않을 수 있습니다. (#651)
    • 이제 GIDGoogleUser가 내부 잠금을 보유하는 동안 키-값 관찰자에게 알림이 전송됩니다. 동일한 사용자를 다시 호출하는 것은 괜찮지만 옵저버는 해당 사용자를 업데이트하는 다른 스레드에서 동기식으로 대기해서는 안 됩니다 (예: dispatch_sync 사용). (#652)
    • 범위가 추가되는 동안 토큰 새로고침이 진행 중일 때 grantedScopes 및 accessToken가 더 이상 범위 추가 전 값으로 되돌아가지 않습니다. (#653)
    • 동시 업데이트 중에 리더에게 더 이상 이전 토큰과 새 토큰이 혼합되어 표시되지 않습니다. (#645)
  • Device Policy 앱을 다시 시작한 후 로그인을 계속할 때 맞춤 nonce 및 요청된 claims가 삭제되는 문제를 수정했습니다. (#637)
  • 키 창 없이 오류가 발생한 후 앱의 나머지 수명 동안 EMM 해결 대화상자가 표시되지 않고 EMM 오류가 kGIDSignInErrorCodeEMM 대신 kGIDSignInErrorCodeUnknown 또는 기본 OAuth 오류로 보고되는 문제가 해결되었습니다. (#642)
  • 서버 오류 응답의 error 키에 문자열이 아닌 값이 포함된 경우 발생하는 비정상 종료를 수정했습니다. (#638)
  • 내부용
    • 테스트에서 NSBundle 스위즐을 삽입된 GIDBundle 심으로 대체 (#658)
    • iOS 시뮬레이터 CI 작업 전에 시뮬레이터 런타임 준비 (#657)
    • iOS용 Thread Sanitizer에서 단위 테스트 실행 (#644)
    • EMM 테스트 간소화 (#641)
    • 카드 v2를 사용하도록 푸시 및 PR 알림 업데이트 (#636)

10.0.0

  • 중요: AppAuth 3.0.0 및 GTMAppAuth 6.0.0으로 업데이트합니다. 이 업데이트는 최소 배포 타겟을 iOS 15.0 및 macOS 12.0으로 높이고, GTMSessionFetcher 종속 항목을 확장하여 4.x 및 5.x를 허용하며, 버전별 Swift Package Manager 매니페스트의 이름을 Package@swift-5.7.swift로 바꿉니다. 이전 OS 버전을 계속 지원해야 하는 프로젝트는 GoogleSignIn 9.2.0을 유지해야 합니다. (#628)
  • Google 로그인을 삽입하는 SDK가 새 gidwrapper 매개변수를 통해 Google의 진단 로그에서 자체 식별할 수 있도록 GIDSignIn.wrapperIdentifier를 추가합니다. 선택사항이며 기존 동작은 변경되지 않습니다. (#625)
  • 로그인 버튼 아이콘을 그라데이션 Google G로 업데이트합니다 (#633).
  • 명시적 NS_SWIFT_NAME 주석을 사용하여 GIDClaim 팩토리 메서드의 Swift 이름을 고정합니다. 가져온 Swift 이름은 변경되지 않습니다. (#627)
  • NSURLComponents를 사용하여 토큰을 올바르게 인코딩합니다 (#618).
  • emmSupport가 nil일 때 additionalTokenRefreshParameters에서 발생하는 비정상 종료 문제를 수정했습니다. (#608)
  • 내부용
    • 새 SDK 로깅 매개변수를 준비하기 위해 SDK 로깅 매개변수 통합 (#616)
    • swift-button-functional-test를 수정했습니다. (#614)
    • SignInSample 가져오기를 수정하고 샘플을 CI에 추가 (#632)
    • CI에 비차단 Xcode 27 프리뷰 작업 추가 (#629)
    • Xcode 27의 샘플 Podfile 배포 타겟을 상향 조정합니다 (#634).
    • 번들러 그룹 종속 항목 범프 (#594, #630)

9.2.0

  • 갱신 토큰 만료일 노출 (#577)
  • amr (인증 방법 참조) 클레임 요청 지원 (#600)
  • 새로 설치 시 키체인 항목 삭제 (#567)
  • AppAuth-iOS 종속 항목 최소 버전을 2.1.0으로 업데이트합니다 (#603).
  • 현지화된 문자열의 선택적 번들 처리 수정 (#373)
  • 엄브렐라 헤더에 모든 공개 헤더를 무조건 포함합니다 (#595).
  • 조건부 컴파일 외부로 GIDSignInButton 가져오기 이동 (#591)
  • 내부용
    • Swift Package Manager 지원 중단 경고를 수정했습니다 (#579).
    • GIDSignInButtonStyle의 문서 주석을 개선합니다. (#204)
    • AppIcon 저작물 카탈로그에서 할당되지 않은 하위 경고 해결 (#348)
    • GitHub Actions 워크플로 리팩터링 (#580)
    • Node 24 호환성을 위해 GitHub Actions를 최신 버전으로 업그레이드합니다. (#592, #593)

9.1.0

  • 로그인 방법을 통해 claims (현재는 auth_time만) 요청 허용 (#550, #552, #553, #569)
  • 이전에 요청된 claims를 포함하도록 GIDSignIn의 addScopes: 메서드를 업데이트합니다. (#557)
  • 내부용
    • 이니셜라이저에서 최대한 빨리 keychainStore에 할당 (#540)
    • Swift 6 지원 추가 (#543, #544, #546)
    • thought GitHub Actions 워크플로 업데이트 (#545, #570)
    • auth_time 클레임을 지원하도록 DaysUntilBirthday 샘플 앱 업데이트 (#555)
    • 코드 전체에서 tokenClaims의 이름을 claims로 바꿉니다. (#568)

9.0.0

  • GSI를 통해 AppAuth에 맞춤 nonce를 제공할 수 있습니다. (#402, #476)
  • GIDSignIn에서 잘못된 오류 코드 수정 (#472)
  • macOS에서 GTMAppAuth 5 지원 추가 (#522)
  • 데이터 보호 마이그레이션 버그 수정 (#533)
  • 내부용
    • AppAuthCore를 명시적 종속 항목으로 추가 (#470)
    • iPhone 시뮬레이터를 14에서 15로 업데이트합니다 (#494).
    • Swift 버튼 통합 테스트 수정 (#497)
    • 러너를 macos-13으로 업데이트 (#498)
    • upload-artifact@v4.6.2를 사용하도록 scorecards.yml 업데이트 (#516)
    • AppAuth 및 GTMAppAuth 종속 항목을 업데이트합니다. (#517, #521)
    • 재사용자의 Swift 통합 테스트 수정 (#518)
    • .build 및 Package.resolved를 포함하도록 .gitignore 업데이트 (#520)
    • NSUserDefaults를 올바르게 setUp 및 tearDown하도록 GIDSignInTest 업데이트 (#527)

8.0.0

  • Google 계정으로 로그인하는 동안 애플리케이션의 무결성을 설정하기 위해 Firebase 앱 체크 지원을 추가하는 정식 버전입니다.
  • 최소 iOS 지원을 iOS 12로 업데이트 (#445)
  • 내부용
    • AppCheckCore 종속 항목을 v11.0으로 업데이트 (#454)
    • 테스트 도우미에 instancetype 반환 추가 (#393)
    • GTMSessionFetcher 모듈식 가져오기 삭제 (#403)
    • 번들러 그룹에서 activesupport를 5.2.5에서 5.2.8.1로 범프 (#429)
    • 지원 중단된 macos-11 실행기 삭제 (#447)
    • 테스트에서 지원 중단된 보관처리 API 사용 업데이트 (#449)

7.1.0-fac-beta-1.1.0

  • Google 계정으로 로그인하는 동안 애플리케이션의 무결성을 설정하는 데 사용되는 Firebase 앱 체크 토큰을 지원하는 베타 출시 버전입니다.
  • v7.1.0에 출시된 개인 정보 보호 매니페스트 지원이 추가되었습니다.
  • 내부용

7.1.0

  • GoogleSignInSwiftSupport 포드에서 Swift 5.0으로 업데이트 (#317)
  • 문서 업데이트 (#351, #372)
  • 개인 정보 보호 매니페스트 추가 (#382)
  • 내부용
    • SFSafariViewController의 오타를 수정했습니다. (#291)
    • 단위 테스트에서 OCMock 사용을 수정합니다. (#298)
    • GTMAppAuth 4.0.0의 새로운 대리자 프로토콜을 사용합니다. (#299)
    • -[GIDSignIn restorePreviousSignIn:]를 호출하기 전에 completion가 nil이 아닌지 확인합니다. (#301)
    • GitHub 워크플로에서 macos-11 실행기를 삭제합니다 (#302).
    • UI 자동화 테스트가 통과하도록 버튼 이름 참조를 업데이트합니다 (#308).

7.1.0-fac-beta-1.0.0

  • Google 계정으로 로그인하는 동안 애플리케이션의 무결성을 설정하는 데 사용되는 Firebase 앱 체크 토큰을 지원하는 베타 출시 버전입니다.
  • 내부용
    • SignInSample Podfile 최소 iOS 버전 업데이트 (#355)
    • 지속적 통합 중에 통과하도록 AppCheckExample 단위 테스트 타겟을 업데이트합니다 (#356).

7.1.0-fac-eap-1.0.0

  • Google 계정으로 로그인하는 동안 애플리케이션의 무결성을 설정하는 데 사용되는 Firebase 앱 체크 토큰을 지원하는 사전 체험 프로그램 (EAP) 출시
  • 내부용
    • SFSafariViewController의 오타를 수정했습니다. (#291)
    • GitHub 워크플로에서 macos-11 실행기를 삭제합니다 (#302).
    • UI 자동화 테스트가 통과하도록 버튼 이름 참조를 업데이트합니다 (#308).
    • -[GIDSignIn restorePreviousSignIn:]를 호출하기 전에 completion가 nil이 아닌지 확인합니다 (#301).
    • GTMAppAuth 4.0.0의 새로운 대리자 프로토콜을 사용합니다. (#299)

7.0.0

  • 이제 Info.plist 파일을 통해 모든 구성을 제공할 수 있습니다. (#228)
    • <key>KEY</key><string>VALUE</string> 쌍에서 다음 키를 사용하여 SDK를 구성합니다.
      • GIDClientID(필수)
      • GIDServerClientID(선택사항)
      • GIDHostedDomain(선택사항)
      • GIDOpenIDRealm(선택사항)
  • Swift 동시 실행 지원 (#187)
  • API 표시 경로 개선 (#249, #228, #187)
    • GIDSignIn
      • 새로운 configuration 속성.
      • signIn: 메서드에서 Configuration: 인수를 삭제했습니다.
      • addScopes:를 삭제하고 GIDGoogleUser에 추가했습니다.
      • 블록을 사용하는 비동기 메서드의 callback: 인수를 completion:로 이름을 바꿨습니다.
    • GIDGoogleUser
      • 새로운 configuration 속성.
      • 새로운 addScopes: 메서드가 GIDSignIn에서 이동되었습니다.
      • authentication 속성이 삭제되고 다음으로 대체되었습니다.
        • 새로운 accessToken 속성.
        • 새로운 refreshToken 속성.
        • 새로운 idToken 속성.
        • 새로운 fetcherAuthorizer 속성.
        • 새로운 refreshTokensIfNeededWithCompletion: 메서드를 지원합니다.
    • GIDGoogleUser에서 액세스, 갱신, ID 토큰을 나타내는 새로운 GIDToken 클래스입니다.
    • 성공적인 signIn 또는 addScopes 흐름의 결과를 나타내는 새로운 GIDSignInResult 클래스입니다.
    • GIDSignInCallback, GIDDisconnectCallback, GIDAuthenticationAction 블록 유형 정의가 삭제되었습니다.

6.2.4

  • 2.x 버전을 허용하도록 GTMSessionFetcher 종속 항목을 업데이트했습니다. (#207)

6.2.3

  • CocoaPods use_frameworks!를 사용하여 GoogleSignInSwift의 리소스 로드를 수정합니다. (#197)
  • Swift Package Manager를 사용할 때 특정 시나리오에서 GoogleSignInSwift의 빌드 오류를 방지합니다. (#166)

6.2.2

  • Swift Package Manager를 사용할 때 GoogleSignInSwift의 빌드 오류를 방지합니다. (#157)
  • Xcode 12 이하에서 빌드 오류를 방지합니다. (#158)

6.2.1

  • GoogleSignInSwiftSupport를 Swift 지원 CocoaPod의 이름으로 사용합니다. (#137)

6.2.0

  • macOS 지원 (#104)
  • SwiftUI 'Google 계정으로 로그인' 버튼이 추가되었습니다. (#103)
  • 로그인 시 추가 범위를 요청하는 기능이 추가되었습니다. (#30)
  • 여러 문제가 해결되었습니다. (#87, #106)

6.1.0

  • SwiftUI를 보여주는 새로운 Swift 샘플 앱 (#63)
  • Mac Catalyst 지원
  • addScopes 구현이 개선되었습니다. (#68, #70)

6.0.2

  • 라이브러리로 빌드할 때 모듈 가져오기를 사용할 수 있는지 확인합니다. (#53)

6.0.1

  • signIn 및 addScopes 메서드에 대해 중첩된 콜백이 호출되지 않는 문제를 수정합니다. (#29)

6.0.0

  • iOS용 Google 로그인이 이제 오픈소스입니다.
  • Swift Package Manager 지원
  • M1 Mac에서 시뮬레이터를 지원합니다.
  • API 노출 영역 업데이트
    • GIDSignIn
      • sharedInstance는 이제 클래스 속성입니다.
      • signIn는 이제 signInWithConfiguration:presentingViewController:callback:이며 항상 기본 프로필 범위를 요청합니다.
      • addScopes:presentingViewController:callback:는 현재 로그인한 사용자에게 기본 프로필 이외의 범위를 추가하는 새로운 방법입니다.
      • restorePreviousSignIn는 이제 restorePreviousSignInWithCallback:입니다.
      • disconnect는 이제 disconnectWithCallback:입니다.
      • GIDSignInDelegate 프로토콜이 삭제되고 GIDSignInCallback 및 GIDDisconnectCallback 블록으로 대체되었습니다.
      • 모든 로그인 흐름 구성 속성이 GIDConfiguration로 이동되었습니다.
    • 사용자를 로그인하는 데 필요한 구성을 나타내기 위해 GIDConfiguration 클래스가 추가되었습니다.
    • GIDAuthentication
      • getTokensWithHandler:는 이제 doWithFreshTokens:입니다.
      • GIDAuthenticationHandler typedef의 이름이 GIDAuthenticationAction로 변경되었습니다.
      • refreshTokensWithHandler:가 삭제되었습니다. 대신 doWithFreshTokens:를 사용하세요.
    • GIDSignInButton는 더 이상 내부적으로 GIDSignIn를 호출하지 않으며, signInWithConfiguration:presentingViewController:callback:를 호출하여 로그인 흐름을 시작하려면 IBAction 또는 이와 유사한 항목에 연결해야 합니다.

5.0.2

  • 사용자가 로그인 과정에서 iOS의 동의 대화상자를 취소할 때 잘못된 오류 코드가 signIn:didSignInForUser:withError:에 전송되는 문제를 수정합니다.

5.0.1

  • iOS 13에서 로그인 흐름을 올바르게 시작할 수 없는 문제가 해결되었습니다.
  • ZIP 배포에는 Xcode 11 이상이 필요합니다.

5.0.0

  • GIDSignIn 변경사항
    • uiDelegate를 presentingViewController로 대체했습니다.
    • hasAuthInKeychain를 hasPreviousSignIn로 대체했습니다.
    • signInSilently를 restorePreviousSignIn로 대체했습니다.
    • 지원 중단된 kGIDSignInErrorCodeNoSignInHandlersInstalled 오류 코드가 삭제되었습니다.
  • GIDAuthentication 변경사항
    • 지원 중단된 메서드 getAccessTokenWithHandler: 및 refreshAccessTokenWithHandler:가 삭제되었습니다.
  • GIDGoogleUser 변경사항
    • 지원 중단된 속성 accessibleScopes를 삭제했습니다. 대신 grantedScopes를 사용하세요.
  • AppAuth 및 GTMAppAuth에 대한 종속 항목을 추가합니다.
  • GoogleToolboxForMac에 대한 종속 항목을 삭제합니다.
  • iOS 7에 대한 지원이 중단되었습니다.

4.4.0

  • GTM OAuth 2에 대한 종속 항목을 삭제합니다.

4.3.0

  • Google의 엔터프라이즈 모바일 관리를 지원합니다.

4.2.0

  • grantedScopes를 GIDGoogleUser에 추가하여 로그인 성공 후 부여된 범위를 확인할 수 있습니다.
  • GIDGoogleUser의 accessibleScopes 지원이 중단되었습니다. 대신 grantedScopes를 사용하세요.
  • hi (힌디어) 및 fr-CA (프랑스어 (캐나다))에 대해 GIDSignInButton를 현지화합니다.
  • 시스템 LocalAuthentication 프레임워크에 종속 항목을 추가합니다.

4.1.2

  • GoogleSignIn CocoaPod에 pod try 지원을 추가합니다.

4.1.1

  • iOS 11에서 GIDSignInUIDelegate의 signInWillDispatch:error:가 호출되지 않는 문제가 해결되었습니다. SFAuthenticationSession은 앱의 뷰 컨트롤러에서 표시되지 않으므로 iOS 11에서는 signIn:presentViewController: 및 signIn:dismissViewController:가 호출되지 않습니다.

4.1.0

  • iOS 11에서 SFAuthenticationSession을 사용합니다.

4.0.2

  • 더 이상 GoogleAppUtilities에 종속되지 않습니다.

4.0.1

  • 오픈소스 포드 종속 항목으로 전환합니다.
  • 로그인 버튼의 모양이 더 이상 요청된 범위에 따라 달라지지 않습니다.

4.0.0

  • 이제 GoogleSignIn 포드가 정적 프레임워크 형식을 취합니다. Objective-C에서 #import <GoogleSignIn/GoogleSignIn.h>를 사용하여 가져옵니다.
  • 모듈 지원을 추가합니다. 모듈이 사용 설정된 경우 Objective-C에서 @import GoogleSignIn;를 사용할 수 있으며, 브리지 헤더를 사용하지 않고 Swift에서 import GoogleSignIn를 사용할 수도 있습니다.
  • 독립형 ZIP 배포 사용자의 경우 이제 여러 프레임워크가 제공되며 모두 프로젝트에 추가해야 합니다. 이러한 분해를 통해 중복된 종속 항목이 있는 경우 더 많은 유연성을 확보할 수 있습니다.
  • GIDSignIn에서 지원 중단된 메서드 checkGoogleSignInAppInstalled를 삭제합니다.
  • GIDSignIn에서 allowsSignInWithBrowser 및 allowsSignInWithWebView 속성을 삭제합니다.
  • 더 이상 앱에서 지원하는 URL 스키마로 번들 ID를 추가할 필요가 없습니다.

3.0.0

  • GIDProfileData에 givenName 및 familyName 속성을 제공합니다.
  • GIDSignIn에서 loginHint 속성을 설정하여 로그인 과정에서 사용자의 ID 또는 이메일 주소를 미리 채울 수 있습니다.
  • GIDSignInButton에서 UIViewController(SignIn) 카테고리와 delegate 속성이 삭제되었습니다.
  • GIDSignIn에서 uiDelegate가 올바르게 설정되어 있고 SafariServices 프레임워크가 연결되어 있어야 합니다.
  • StoreKit에 대한 종속 항목을 삭제합니다.
  • 비트코드 지원을 제공합니다.
  • Xcode 6과의 비트코드 비호환성으로 인해 Xcode 7.0 이상이 필요합니다.

2.4.0

  • 새 Google 로고로 로그인 버튼을 업데이트합니다.
  • 로그인에 대한 도메인 제한을 지원합니다.
  • ID 토큰을 새로고침할 수 있습니다.

2.3.2

  • 더 이상 Xcode 7이 필요하지 않습니다.

2.3.1

  • GIDProfileData의 imageURLWithDimension:에서 발생하는 비정상 종료 문제를 수정합니다.

2.3.0

  • Xcode 7.0 이상이 필요합니다.
  • iOS 9에서 로그인하는 데 SFSafariViewController를 사용합니다. 이렇게 하려면 uiDelegate을 설정해야 합니다.
  • 사용자 프로필 가져오기를 최적화합니다.
  • GIDAuthentication에서 GTMFetcherAuthorizationProtocol을 지원합니다.

2.2.0

  • iOS 9 (베타)와 호환됩니다. 이 버전의 로그인 SDK에는 비트코드가 포함되어 있지 않으므로 Xcode 7을 사용하는 경우 프로젝트에서 ENABLE_BITCODE를 NO로 설정해야 합니다.
  • GIDSignInButton의 자동 레이아웃 제약 조건에 대한 설명 식별자를 추가합니다.
  • signInSilently에 더 이상 uiDelegate 설정이 필요하지 않습니다.

2.1.0

  • GIDSignInButton의 자동 레이아웃 문제가 해결되었습니다.
  • GIDAuthentication에서 액세스 토큰을 새로고침하는 API를 추가합니다.
  • GIDSignIn에서 할당되지 않은 clientID에 대한 예외 설명이 개선되었습니다.
  • 기타 사소한 버그 수정

2.0.1

  • 버그 수정

2.0.0

  • 브라우저로 앱을 전환하는 대신 UIWebView를 통한 로그인을 지원하며, 새로운 allowsSignInWithWebView 속성으로 구성할 수 있습니다.
  • 이제 allowsSignInWithBrowser 속성을 통해 브라우저로 전환하는 앱 전환과 allowsSignInWithWebView 속성을 통한 인앱 웹 보기를 사용 중지한 앱은 사용자에게 App Store에서 Google 앱을 다운로드하도록 안내하는 메시지를 표시할 수 있습니다.
  • 자동 레이아웃이 사용 설정된 경우 로그인 버튼 크기 조정 문제 수정
  • 이제 signInSilently는 문서에 명시된 대로 hasAuthInKeychain가 NO일 때 오류와 함께 대리자를 호출합니다.
  • 기타 사소한 버그 수정

1.0.0

  • 새로운 API가 포함된 새로운 로그인 중심 SDK
  • 문맥 브랜딩이 적용된 동적으로 렌더링된 로그인 버튼
  • 기본 프로필 지원
  • allowsSignInWithBrowser 속성이 추가되었습니다.