CocoaPods ogłosiło, że w grudniu 2026 r. stanie się platformą tylko do odczytu, po czym nie będzie można publikować nowych wersji podów. W kolejnych sekcjach znajdziesz więcej informacji o tej zmianie oraz dowiesz się, jak przenieść aplikacje do innych menedżerów instalacji.
Przegląd
- Co się zmienia? CocoaPods przechodzi w stan tylko do odczytu, a Firebase przestanie publikować nowe wersje w CocoaPods w październiku 2026 r.
- Czy moja aplikacja przestanie działać? Nie. Istniejące wersje bibliotek Firebase będą nadal dostępne w rejestrze CocoaPods bez ograniczeń czasowych, a aplikacje korzystające z tych wersji CocoaPod będą nadal działać.
- Dlaczego warto przeprowadzić migrację? Aby nadal otrzymywać najnowsze funkcje, ulepszenia wydajności i krytyczne poprawki, przenieś korzystanie z menedżera pakietów Swift lub instalacji ręcznej.
W związku z ogłoszeniem CocoaPods Firebase przestanie publikować nowe wersje w CocoaPods w październiku 2026 r. Te zmiany mają wpływ na wszystkie te pody i ich zależności:
| Pody Firebase, których dotyczy problem | ||
|---|---|---|
Firebase |
FirebaseAuth |
FirebaseInstallations |
FirebaseABTesting |
FirebaseCore |
FirebaseMessaging |
FirebaseAI |
FirebaseCrashlytics |
FirebaseMLModelDownloader |
FirebaseAILogic |
FirebaseDatabase |
FirebasePerformance |
FirebaseAnalytics |
FirebaseFirestore |
FirebaseRemoteConfig |
FirebaseAppCheck |
FirebaseFunctions |
FirebaseStorage |
FirebaseAppDistribution |
FirebaseInAppMessaging |
Zmiany te będą miały wpływ na wszystkie dystrybucje Firebase, które zawierają natywny pakiet SDK Firebase Apple, w tym pakiet Firebase Unity SDK, pakiet Firebase C++ SDK i FlutterFire.
Migracja aplikacji Apple
Jeśli przenosisz inne zależności (niezwiązane z Firebase) z CocoaPods, pamiętaj, że najlepszą praktyką w branży jest używanie jednej metody instalacji w całym projekcie. Łączenie CocoaPods i Swift Package Manager (SPM) w ramach tego samego celu może prowadzić do złożonych cykli zależności i błędów kompilacji. Jeśli zależności inne niż Firebase nie obsługują jeszcze SPM, ręczna instalacja bibliotek Firebase jest najbardziej stabilnym sposobem konsolidacji przepływu pracy podczas migracji.
Swift Package Manager (SPM)
Co to jest Swift Package Manager?
Menedżer pakietów Swift (SPM) to natywne narzędzie Apple do zarządzania dystrybucją kodu. Jest on zintegrowany bezpośrednio z Xcode, co eliminuje konieczność korzystania z zewnętrznych narzędzi CLI, takich jak CocoaPods, i upraszcza strukturę projektu, ponieważ w większości standardowych konfiguracji nie trzeba używać .xcworkspace.
Migracja do menedżera pakietów Swift
W przypadku większości projektów migracja do Swift Package Manager nie wymaga zmiany kodu aplikacji, chyba że projekt ma niestandardowe konfiguracje Xcode lub zależności, które w dużym stopniu korzystają ze skryptów instalacyjnych CocoaPods.
Aby przejść z CocoaPods na menedżera pakietów Swift:
- Sprawdź, czy wszystkie zależności aplikacji obsługują menedżera pakietów Swift. Wszystkie biblioteki Firebase obsługują SPM, ale musisz sprawdzić, czy Twoje zależności inne niż Firebase obsługują SPM w ich repozytoriach GitHub lub na stronach produktów. Jeśli niektóre zależności inne niż Firebase nie obsługują SPM, najbardziej stabilną ścieżką migracji z CocoaPods jest instalacja ręczna zamiast SPM.
- Zamknij Xcode i usuń CocoaPods z projektu:
- Odinstaluj zależności CocoaPods, uruchamiając w katalogu projektu to polecenie:
pod deintegrate
- Usuń wygenerowany przez CocoaPods plik
.xcworkspace.
- Odinstaluj zależności CocoaPods, uruchamiając w katalogu projektu to polecenie:
- Zaktualizuj projekt w Xcode o zależności menedżera pakietów Swift:
- Otwórz plik
.xcodeprojprojektu w Xcode. - Ponownie dodaj zależności aplikacji, wybierając File > Add Package Dependencies (Plik > Dodaj zależności pakietu).
- Otwórz plik
- Po dodaniu pakietu Firebase możesz zaktualizować biblioteki Firebase, od których zależy Twoja aplikacja. W tym celu otwórz ustawienia projektu w Xcode, wybierz docelową aplikację i zaktualizuj biblioteki w sekcji Frameworks, Libraries, and Embedded Content (Frameworki, biblioteki i treści osadzone). Więcej informacji o korzystaniu z SPM w Xcode znajdziesz w dokumentacji Apple.
Instalacja ręczna
Co to jest instalacja ręczna?
Instalacja ręczna polega na pobraniu archiwum Firebase.zip, które zawiera wstępnie skompilowane struktury XCFramework dla wszystkich usług Firebase. Dzięki temu możesz przeciągać i upuszczać konkretne pakiety SDK bezpośrednio do projektu Xcode bez używania menedżera zależności.
Migracja do instalacji ręcznej
- Zamknij Xcode i usuń CocoaPods z projektu:
- Odinstaluj zależności CocoaPods, uruchamiając w katalogu projektu to polecenie:
pod deintegrate
- Usuń wygenerowany przez CocoaPods plik
.xcworkspace.
- Odinstaluj zależności CocoaPods, uruchamiając w katalogu projektu to polecenie:
- Aby ręcznie dodać Firebase do projektu, wykonaj czynności opisane w naszym przewodniku instalacji.
Przenoszenie aplikacji w Unity, C++ i Flutterze
pakiet Firebase Unity SDK i FlutterFire
Większość deweloperów korzystających z Unity i Flattera nie musi podejmować żadnych działań. Aktualizacja do najnowszej wersji Firebase w Unity lub Flutterze automatycznie przeniesie menedżera zależności na platformach Apple do menedżera pakietów Swift.
Pamiętaj, że jeśli zarządzasz zależnościami innymi niż Firebase za pomocą CocoaPods, może być konieczne ręczne przeniesienie tych zależności.
pakiet Firebase C++ SDK
Jeśli uwzględniasz podstawowe zależności iOS za pomocą CocoaPods, możesz postępować zgodnie z powyższymi instrukcjami migracji, aby zaktualizować zależności Firebase CocoaPod i zamiast nich używać menedżera pakietów Swift.
Najczęstsze pytania
Chcę nadal używać CocoaPods po październiku 2026 r. Jak utrzymać działanie aplikacji?
Możesz użyć starszych wersji pakietów Firebase lub skopiować specyfikacje pakietów Firebase z GitHub i hostować je we własnym repozytorium specyfikacji.
W obu przypadkach zalecamy jak najszybsze przejście z CocoaPods. Po wycofaniu obsługi CocoaPods w październiku 2026 roku nie będziemy oficjalnie wspierać instalowania Firebase bezpośrednio z pliku podspec. Jeśli zdecydujesz się hostować własne pliki podspec, będziesz odpowiedzialny za ich aktualizowanie.
Dlaczego obsługa CocoaPods zostanie wycofana w październiku 2026 r., skoro CocoaPods można publikować do grudnia 2026 r.?
Wybraliśmy październik, aby mieć pewność, że ostateczne wersje opublikowane w CocoaPods będą stabilne przed zablokowaniem rejestru w grudniu. Ten harmonogram zapewnia niezbędny margines czasu na bezpieczne skoordynowanie tych ostatnich aktualizacji i gwarantuje, że pakiety SDK na wielu platformach, które są zależne od natywnych pakietów SDK, ale mają opóźnione cykle wydawnicze, będą miały wystarczająco dużo czasu na przygotowanie własnych wersji.
Czy moja aplikacja przestanie działać, jeśli jej nie zaktualizuję?
Nie, wycofanie dotyczy tylko przyszłych wersji bibliotek Firebase. Istniejące wersje w CocoaPods pozostaną z możliwością zainstalowania, a aplikacje wdrożone przy użyciu tych wersji nie ulegną zmianie.
Czy ma to wpływ na płatności za projekt?
Nie.
Podczas kompilowania projektu po migracji do menedżera pakietów Swift pojawia się błąd „Nie znaleziono FirebaseLibrary”. Jak to naprawić?
Sprawdź, czy pakiet Firebase został dodany do projektu Xcode.
Podczas dodawania pakietu Firebase Xcode wyświetli prośbę o dodanie platform Firebase do celów kompilacji aplikacji. Jeśli zapomnisz dodać framework na tym etapie, możesz to zrobić później w ustawieniach projektu w sekcji Build Phases > Link Binary with Libraries. Jeśli Twój projekt zawiera wiele celów, upewnij się, że Firebase jest dodany do właściwych celów.
Czy ta zmiana spowoduje przerwanie moich potoków CI/CD?
Nie. Potoki działające w wersjach pod install lub pod update będą nadal działać w przypadku istniejących wersji. Nie będą jednak pobierać żadnych nowych aktualizacji biblioteki Firebase
wydanych po październiku 2026 roku.