CocoaPods에서 이전

CocoaPods는 2026년 12월에 읽기 전용이 될 것이라고 발표했으며, 그 이후에는 새 포드 버전을 더 이상 게시할 수 없습니다. 다음 섹션에서는 이 변경사항에 관한 자세한 정보를 제공하고 앱을 다른 설치 관리자로 이전하는 방법을 설명합니다.

개요

  • 변경되는 사항 CocoaPods가 읽기 전용 상태로 전환됩니다. Firebase 12는 CocoaPods에 게시되는 마지막 메이저 버전이며 Firebase는 2026년 10월에 CocoaPods에 새 버전 게시를 중단할 예정입니다.
  • 앱이 중단되나요? 아니요. 기존 버전의 Firebase 라이브러리는 CocoaPods 레지스트리에서 계속 사용할 수 있으며, CocoaPods 생태계 지원이 계속되는 한 해당 CocoaPod 버전을 사용하는 앱은 계속 작동합니다.
  • 이전해야 하는 이유 최신 기능, 성능 개선사항, 중요 수정사항을 계속 받으려면 Swift Package Manager 또는 수동 설치를 사용하도록 이전해야 합니다.

CocoaPods의 발표에 따라 Firebase는 2026년 10월에 CocoaPods에 새 버전 게시를 중단합니다. 이러한 변경사항은 다음 포드 및 하위 종속 항목 모두에 영향을 미칩니다.

영향을 받는 Firebase 포드
Firebase FirebaseAuth FirebaseInstallations
FirebaseABTesting FirebaseCore FirebaseMessaging
FirebaseAI FirebaseCrashlytics FirebaseMLModelDownloader
FirebaseAILogic FirebaseDatabase FirebasePerformance
FirebaseAnalytics FirebaseFirestore FirebaseRemoteConfig
FirebaseAppCheck FirebaseFunctions FirebaseStorage
FirebaseAppDistribution FirebaseInAppMessaging

이러한 변경사항은 Firebase Unity SDK, Firebase C++ SDK, FlutterFire를 비롯하여 네이티브 Firebase Apple SDK를 래핑하는 모든 Firebase 배포에도 영향을 미칩니다.

Apple 앱 이전하기

CocoaPods에서 다른 (Firebase 이외의) 종속 항목을 이전하는 경우 전체 프로젝트에 단일 설치 방법을 사용하는 것이 업계 권장사항입니다. 동일한 타겟 내에서 CocoaPods와 Swift Package Manager (SPM)를 혼합하면 복잡한 종속 항목 주기와 빌드 오류가 발생할 수 있습니다. Firebase 이외의 종속 항목이 아직 SPM을 지원하지 않는 경우 Firebase 라이브러리에 수동 설치를 사용하면 마이그레이션 시 워크플로를 통합하는 가장 안정적인 방법입니다.

Swift Package Manager (SPM)

Swift Package Manager란 무엇인가요?

Swift Package Manager (SPM)는 코드 배포를 관리하는 Apple의 네이티브 도구입니다. Xcode에 직접 통합되므로 CocoaPods와 같은 외부 CLI 도구가 필요하지 않으며 대부분의 표준 구성에서 .xcworkspace가 필요하지 않으므로 프로젝트 구조가 간소화됩니다.

Swift Package Manager를 사용하도록 이전

대부분의 프로젝트에서 Swift Package Manager로 이전할 때 애플리케이션 코드를 변경할 필요가 없습니다. 단, 프로젝트에 CocoaPods 설치 스크립트를 많이 사용하는 맞춤 Xcode 구성 또는 종속 항목이 있는 경우는 예외입니다.

CocoaPods에서 Swift Package Manager로 이전하는 방법은 다음과 같습니다.

  1. 앱의 각 종속 항목이 Swift Package Manager를 지원하는지 확인합니다. 모든 Firebase 라이브러리는 SPM을 지원하지만 Firebase 이외의 종속 항목에 대한 SPM 지원은 GitHub 저장소 또는 제품 페이지에서 확인해야 합니다. 일부 Firebase 이외의 종속 항목이 SPM을 지원하지 않는 경우 SPM 대신 수동 설치를 사용하는 것이 CocoaPods에서 가장 안정적인 이전 경로입니다.
  2. Xcode를 닫은 상태에서 프로젝트에서 CocoaPods를 삭제합니다.
    1. 프로젝트 디렉터리에서 다음 명령어를 실행하여 CocoaPods 종속 항목을 제거합니다.
      pod deintegrate
    2. CocoaPods에서 생성된 .xcworkspace를 삭제합니다.
  3. Xcode에서 Swift Package Manager 종속 항목으로 프로젝트를 업데이트합니다.
    1. Xcode를 통해 프로젝트의 .xcodeproj 파일을 엽니다.
    2. File(파일) > Add Package Dependencies(패키지 종속 항목 추가)를 사용하여 앱 종속 항목을 다시 추가합니다.
  4. Firebase 패키지가 추가되면 Xcode에서 프로젝트 설정으로 이동하고 앱 타겟을 선택한 후 프레임워크, 라이브러리, 삽입된 콘텐츠에서 라이브러리를 업데이트하여 종속된 Firebase 라이브러리를 업데이트할 수 있습니다.

Apple 문서에서 Xcode에서 SPM 사용에 대해 자세히 알아보세요.

수동 설치

수동 설치란 무엇인가요?

수동 설치에는 모든 Firebase 제품의 사전 컴파일된 XCFrameworks가 포함된 Firebase.zip 보관 파일을 다운로드하는 작업이 포함됩니다. 이렇게 하면 종속 항목 관리자를 사용하지 않고도 특정 SDK를 Xcode 프로젝트로 직접 드래그 앤 드롭할 수 있습니다.

수동 설치를 사용하여 이전

  1. Xcode를 닫은 상태에서 프로젝트에서 CocoaPods를 삭제합니다.
    1. 프로젝트 디렉터리에서 다음 명령어를 실행하여 CocoaPods 종속 항목을 제거합니다.
      pod deintegrate
    2. CocoaPods에서 생성된 .xcworkspace를 삭제합니다.
  2. 설치 가이드의 단계에 따라 Firebase를 프로젝트에 수동으로 추가합니다.

Unity, C++, Flutter 앱 이전

Firebase Unity SDK 및 FlutterFire

대부분의 Unity 및 Flutter 개발자는 별도의 조치를 취하지 않아도 됩니다. Unity 또는 Flutter에서 최신 버전의 Firebase로 업데이트하면 Apple 플랫폼의 기본 종속 항목 관리자가 Swift Package Manager로 자동 이전됩니다.

CocoaPods를 통해 Firebase 이외의 종속 항목을 관리하는 경우 수동으로 이전해야 할 수 있습니다.

Firebase C++ SDK

CocoaPods를 통해 기본 iOS 종속 항목을 포함한 경우 위의 마이그레이션 안내에 따라 Firebase CocoaPod 종속 항목을 업데이트하여 Swift Package Manager를 대신 사용할 수 있습니다.

FAQ

2026년 10월 이후에도 CocoaPods를 계속 사용해야 합니다. 앱을 계속 실행하려면 어떻게 해야 하나요?

이전 버전의 Firebase 포드를 사용하거나 GitHub에서 Firebase 포드 사양을 복사하여 자체 사양 저장소에서 호스팅할 수 있습니다.

어느 경우든 가능한 한 빨리 CocoaPods에서 이전하는 것이 좋습니다. 2026년 10월에 CocoaPods 지원이 중단된 후에는 podspec에서 직접 Firebase를 설치하는 것에 대한 공식 지원이 제공되지 않습니다. 자체 podspec을 호스팅하는 경우 최신 상태로 유지해야 합니다.

CocoaPods는 2026년 12월까지 게시할 수 있는데 CocoaPods 지원이 2026년 10월에 중단되는 이유는 무엇인가요?

12월에 레지스트리가 잠기기 전에 CocoaPods에 게시된 최종 버전이 안정적인지 확인하기 위해 10월을 선택했습니다. 이 타임라인은 이러한 최종 업데이트를 안전하게 조정하는 데 필요한 여유를 제공하며, 네이티브 SDK에 종속되지만 출시 주기가 지연되는 크로스 플랫폼 SDK가 자체 출시를 준비할 수 있는 충분한 시간을 확보할 수 있도록 합니다.

업데이트하지 않으면 앱이 작동하지 않나요?

아니요. 이 지원 중단은 Firebase 라이브러리의 향후 출시에만 영향을 미칩니다. Firebase 12는 CocoaPods에 게시된 마지막 메이저 버전이며, CocoaPods의 기존 버전 (v12 이하)은 CocoaPods 생태계 지원이 계속되는 한 설치 및 작동이 가능합니다.

이것이 프로젝트 결제에 영향을 미치나요?

아니요.

Swift Package Manager로 이전한 후 프로젝트를 컴파일할 때 'FirebaseLibrary를 찾을 수 없음' 오류가 발생합니다. 어떻게 해결해야 하나요?

Xcode 프로젝트에 Firebase 패키지를 추가했는지 확인합니다.

Firebase 패키지를 추가할 때 Xcode는 앱의 빌드 대상에 Firebase 프레임워크를 추가하라는 메시지를 표시합니다. 이 단계에서 프레임워크를 추가하는 것을 잊은 경우 나중에 언제든지 타겟 설정의 Build Phases(빌드 단계) > Link Binary with Libraries(라이브러리와 바이너리 연결)에서 추가할 수 있습니다. 프로젝트에 여러 타겟이 포함된 경우 올바른 타겟에 Firebase를 추가했는지 확인합니다.

이 전환으로 인해 CI/CD 파이프라인이 중단되나요?

아니요. pod install 또는 pod update를 실행하는 파이프라인은 기존 버전에서 계속 작동합니다. 하지만 2026년 10월 이후에 출시된 새로운 Firebase 라이브러리 업데이트는 가져오지 않습니다.