Apple 프로젝트에 Firebase 추가

기본 요건

  • 다음을 설치합니다.

    • Xcode 15.2 이상
  • 프로젝트가 다음 요구사항을 충족하는지 확인합니다.

    • 프로젝트에서 다음 플랫폼 버전 이상을 타겟팅해야 합니다.
      • iOS 13
      • macOS 10.15
      • tvOS 13
      • watchOS 7
  • 실제 Apple 기기를 설정하거나 시뮬레이터를 사용하여 앱을 실행합니다.

    Apple 플랫폼에서 Cloud Messaging을 사용하려면 다음 기본 요건을 충족해야 합니다.

    • 실제 Apple 기기를 설정합니다.
    • Apple 개발자 계정의 Apple 푸시 알림 인증 키를 가져옵니다.
    • Xcode의 App(앱) > Capabilities(기능)에서 푸시 알림을 사용 설정합니다.

Xcode 프로젝트가 준비되지 않았지만 Firebase 제품을 사용해 보고자 하는 경우 빠른 시작 샘플 중 하나를 다운로드하세요.

1단계: Firebase 프로젝트 만들기

Firebase를 Apple 앱에 추가하려면 먼저 앱에 연결할 Firebase 프로젝트를 만드세요. Firebase 프로젝트에 대한 자세한 내용은 Firebase 프로젝트 이해를 참조하세요.

  1. Firebase Console에서 프로젝트 추가를 클릭합니다.

    • 기존 Google Cloud 프로젝트에 Firebase 리소스를 추가하려면 프로젝트 이름을 입력하거나 드롭다운 메뉴에서 선택합니다.

    • 새 프로젝트를 만들려면 원하는 프로젝트 이름을 입력합니다. 필요한 경우 프로젝트 이름 아래에 표시되는 프로젝트 ID를 수정할 수도 있습니다.

  2. 메시지가 표시되면 Firebase 약관을 검토하고 이에 동의합니다.

  3. 계속을 클릭합니다.

  4. (선택사항) 다음 Firebase 제품의 사용 환경을 최적화하려면 프로젝트에 Google Analytics를 설정합니다.

    기존 Google Analytics 계정을 선택하거나 새 계정을 만듭니다.

    새 계정을 만드는 경우 Analytics 보고 위치를 선택한 후 프로젝트의 데이터 공유 설정 및 Google Analytics 약관에 동의합니다.

  5. 프로젝트 만들기를 클릭합니다. 기존 Google Cloud 프로젝트를 사용하는 경우에는 Firebase 추가를 클릭합니다.

Firebase에서 Firebase 프로젝트용 리소스를 자동으로 프로비저닝합니다. 프로세스가 완료되면 Firebase Console에서 Firebase 프로젝트의 개요 페이지로 이동됩니다.

2단계: Firebase에 앱 등록

Apple 앱에서 Firebase를 사용하려면 Firebase 프로젝트에 앱을 등록해야 합니다. 앱 등록이란 보통 프로젝트에 앱을 '추가'하는 것을 의미합니다.

  1. Firebase 콘솔로 이동

  2. 프로젝트 개요 페이지 중앙에 있는 iOS+ 아이콘을 클릭하여 설정 워크플로를 시작합니다.

    Firebase 프로젝트에 앱을 이미 추가한 경우 앱 추가를 클릭하여 플랫폼 옵션을 표시합니다.

  3. 번들 ID 필드에 앱의 번들 ID를 입력합니다.

    • 번들 ID는 Apple 생태계에서 애플리케이션을 고유하게 식별하는 역할을 합니다.

    • 번들 ID 찾기: Xcode에서 프로젝트를 열고 프로젝트 탐색기에서 최상위 앱을 선택한 다음 General(일반) 탭을 선택합니다.

      Bundle Identifier(번들 식별자) 필드의 값이 번들 ID입니다(예: com.yourcompany.yourproject).

    • 번들 ID 값은 대소문자를 구분하며 Firebase 프로젝트에 등록한 후에는 해당 Firebase 앱의 번들 ID 값을 변경할 수 없습니다.

  4. (선택사항) 다른 앱 정보(앱 닉네임App Store ID)를 입력합니다.

  5. 앱 등록을 클릭합니다.

3단계: Firebase 구성 파일 추가

  1. GoogleService-Info.plist 다운로드를 클릭하여 Firebase Apple 플랫폼 구성 파일(GoogleService-Info.plist)을 가져옵니다.

    • Firebase 구성 파일에는 고유하지만 보안 비밀은 아닌 프로젝트 식별자가 있습니다. 이 구성 파일에 대한 자세한 내용은 Firebase 프로젝트 이해를 참조하세요.

    • 언제든지 다시 Firebase 구성 파일을 다운로드할 수 있습니다.

    • 구성 파일 이름에 (2)와 같은 문자가 추가되지 않았는지 확인합니다.

  2. 구성 파일을 Xcode 프로젝트의 루트로 이동합니다. 메시지가 표시되면 모든 대상에 구성 파일을 추가하도록 선택합니다.

프로젝트에 번들 ID가 여러 개 있으면 각 앱에 자체 GoogleService-Info.plist 파일이 포함되도록 각 번들 ID를 Firebase 콘솔에서 등록된 앱과 연결해야 합니다.

4단계: 앱에 Firebase SDK 추가

Swift Package Manager를 사용해 Firebase 종속 항목을 설치하고 관리하세요.

  1. 앱 프로젝트를 연 상태로 Xcode에서 File(파일) > Add Packages(패키지 추가)로 이동합니다.
  2. 메시지가 표시되면 Firebase Apple 플랫폼 SDK 저장소를 추가합니다.
  3.   https://github.com/firebase/firebase-ios-sdk
  4. 사용할 SDK 버전을 선택합니다.
  5. 사용할 Firebase 라이브러리를 선택합니다.

    Firebase 프로젝트에 Google Analytics가 사용 설정되어 있으면 FirebaseAnalytics를 추가해야 합니다. IDFA 수집 기능이 없는 애널리틱스의 경우 대신 FirebaseAnalyticsWithoutAdId를 추가합니다.

완료되면 Xcode가 백그라운드에서 자동으로 종속 항목을 확인하고 다운로드하기 시작합니다.

5단계: 앱에서 Firebase 초기화

마지막 단계는 애플리케이션에 초기화 코드를 추가하는 것입니다. 앱에 Firebase를 추가할 때 이 단계를 이미 완료했을 수 있습니다. 빠른 시작 샘플 프로젝트를 사용하는 경우 이 단계는 이미 완료되어 있습니다.

  1. UIApplicationDelegateFirebaseCore 모듈과 앱 대리자가 사용하는 다른 Firebase 모듈을 가져옵니다. 예를 들어 Cloud FirestoreAuthentication을 사용하려면 다음을 따르세요.
    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          
    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. 앱 대리자의 application(_:didFinishLaunchingWithOptions:) 메서드에서 FirebaseApp 공유 인스턴스를 구성합니다.
    // Use Firebase library to configure APIs
    FirebaseApp.configure()
    // Use Firebase library to configure APIs
    FirebaseApp.configure()
    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. SwiftUI를 사용하는 경우 앱 대리자를 만들고 UIApplicationDelegateAdaptor 또는 NSApplicationDelegateAdaptor를 통해 App 구조체에 연결해야 합니다. 앱 대리자 재구성도 중지해야 합니다. 자세한 내용은 SwiftUI 안내를 참조하세요.
    SwiftUI
    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. Google Analytics용 Firebase SDK를 포함한 경우 앱을 실행하여 Firebase를 성공적으로 설치했다는 확인을 Firebase Console에 보낼 수 있습니다.

작업이 끝났습니다. 이제 다음 단계로 진행할 수 있습니다.

하지만 설정하는 데 문제가 있으면 Apple 플랫폼 문제 해결 및 FAQ를 참조하세요.

사용 가능한 라이브러리

이 섹션에는 Apple 플랫폼에서 지원되는 Firebase 제품 목록이 나와 있습니다. 다음 Firebase Apple 플랫폼 라이브러리에 대해 자세히 알아보세요.

서비스 또는 제품 포드 SwiftPM 라이브러리 Google 애널리틱스.">Analytics 추가?
AdMob pod 'Google-Mobile-Ads-SDK' 해당 사항 없음
Analytics pod 'FirebaseAnalytics' FirebaseAnalytics
App Check pod 'FirebaseAppCheck' FirebaseAppCheck
App Distribution pod 'FirebaseAppDistribution' FirebaseAppDistribution
Authentication pod 'FirebaseAuth' FirebaseAuth
Cloud Firestore pod 'FirebaseFirestore' FirebaseFirestore
Cloud Functions for Firebase Client SDK pod 'FirebaseFunctions' FirebaseFunctions
Cloud Messaging pod 'FirebaseMessaging' FirebaseMessaging
Cloud Storage pod 'FirebaseStorage' FirebaseStorage
Crashlytics pod 'FirebaseCrashlytics' FirebaseCrashlytics
Dynamic Links pod 'FirebaseDynamicLinks' FirebaseDynamicLinks
In-App Messaging pod 'FirebaseInAppMessaging' FirebaseInAppMessaging
(필수)
Firebase 설치 pod 'FirebaseInstallations' FirebaseInstallations
Firebase ML Custom Model API pod 'FirebaseMLModelDownloader' FirebaseMLModelDownloader
Performance Monitoring pod 'FirebasePerformance' FirebasePerformance
Realtime Database pod 'FirebaseDatabase' FirebaseDatabase
Remote Config pod 'FirebaseRemoteConfig' FirebaseRemoteConfig
Vertex AI in Firebase pod 'FirebaseVertexAI' FirebaseVertexAI

Swift Package Manager를 사용하지 않고 통합

Swift Package Manager를 사용하지 않아도 CocoaPods를 사용하거나 프레임워크를 직접 가져와서 Firebase SDK를 활용할 수 있습니다.

CocoaPods

CocoaPods 통합에 대한 자세한 내용은 가이드를 참조하세요.

프레임워크

iOS 플랫폼 지원 외에도 zip에는 이제 .xcframework 파일이 포함됩니다. 자세한 내용은 GitHub에서 Firebase Apple 플랫폼 SDK 리드미를 참조하세요.

  1. 프레임워크 SDK zip 파일을 다운로드합니다. 파일 크기는 약 200MB이며 다운로드하는 데 다소 시간이 걸릴 수 있습니다.

  2. 파일의 압축을 푼 다음 앱에 포함할 프레임워크를 통합합니다.

    다음 중 한 곳에서 통합 안내를 확인할 수 있습니다.

    프레임워크 버전 또는 종속 항목에 관한 자세한 내용은 다운로드한 zip 배포 내의 METADATA.md 파일을 참고하세요.

  3. 타겟의 빌드 설정에서 Other Linker Settings-ObjC 링커 플래그를 추가합니다.

다음 단계

Firebase 알아보기:

앱에 Firebase 서비스 추가: