CocoaPods ogłosiło że w grudniu 2026 r. przejdzie w tryb tylko do odczytu, po czym nie będzie można publikować nowych wersji podów. Więcej informacji o tej zmianie oraz o tym, jak przenieść aplikacje do innych menedżerów instalacji, znajdziesz w kolejnych sekcjach.
Przegląd
- Co się zmieni? CocoaPods przechodzi w tryb tylko do odczytu, a Firebase przestanie publikować nowe wersje w CocoaPods w październiku 2026 r.
- Czy moja aplikacja przestanie działać? Nie. Dotychczasowe wersje bibliotek Firebase będą nadal dostępne w rejestrze CocoaPods, a aplikacje, które z nich korzystają, będą działać.
- Dlaczego warto przeprowadzić migrację? Aby nadal otrzymywać najnowsze funkcje, ulepszenia wydajności i krytyczne poprawki, przenieś się na menedżera pakietów Swift lub instalację ręczną.
W związku z ogłoszeniem CocoaPods Firebase przestanie publikować nowe wersje w CocoaPods w październiku 2026 r. Te zmiany dotyczą wszystkich tych podów 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 |
Te zmiany będą też miały wpływ na wszystkie dystrybucje Firebase, które obejmują natywny pakiet Firebase Apple SDK, w tym pakiet Firebase Unity SDK, pakiet Firebase C++ SDK i FlutterFire.
Migracja aplikacji na Apple
Jeśli przenosisz inne zależności (niezwiązane z Firebase) z CocoaPods, pamiętaj, że najlepszym rozwiązaniem jest używanie jednej metody instalacji w całym projekcie. Łączenie CocoaPods i menedżera pakietów Swift w tym samym celu może prowadzić do złożonych cykli zależności i błędów kompilacji. Jeśli zależności niezwiązane z Firebase nie obsługują jeszcze menedżera pakietów Swift, najbardziej stabilnym sposobem na ujednolicenie przepływu pracy podczas migracji jest użycie ręcznej instalacji bibliotek Firebase.
Menedżer pakietów Swift
Co to jest menedżer pakietów Swift?
Menedżer pakietów Swift to natywne narzędzie Apple do zarządzania dystrybucją kodu. Jest on zintegrowany bezpośrednio z Xcode, co eliminuje potrzebę 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ć pliku .xcworkspace.
Migracja do menedżera pakietów Swift
W przypadku większości projektów migracja do menedżera pakietów Swift 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.
Oto jak przeprowadzić migrację z CocoaPods do menedżera pakietów Swift:
- Sprawdź, czy wszystkie zależności aplikacji obsługują menedżera pakietów Swift. Wszystkie biblioteki Firebase obsługują menedżera pakietów Swift, ale musisz sprawdzić, czy zależności niezwiązane z Firebase obsługują go w swoich repozytoriach GitHub lub na stronach produktów. Jeśli niektóre zależności niezwiązane z Firebase nie obsługują menedżera pakietów Swift, to użycie ręcznej instalacji zamiast menedżera pakietów Swift jest najbardziej stabilnym sposobem na migrację z CocoaPods.
- Zamknij Xcode i usuń CocoaPods z projektu:
- Odinstaluj zależności CocoaPods, uruchamiając to polecenie w katalogu projektu:
pod deintegrate
- Usuń plik
.xcworkspacewygenerowany przez CocoaPods.
- Odinstaluj zależności CocoaPods, uruchamiając to polecenie w katalogu projektu:
- W Xcode zaktualizuj projekt 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. Aby to zrobić, otwórz ustawienia projektu w Xcode, wybierz cel aplikacji i zaktualizuj biblioteki w sekcji Frameworks, Libraries, and Embedded Content (Frameworki, biblioteki i treści osadzone).
Więcej informacji o korzystaniu z menedżera pakietów Swift 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 XCFrameworki dla wszystkich usług Firebase. Dzięki temu możesz przeciągać i upuszczać określone 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 to polecenie w katalogu projektu:
pod deintegrate
- Usuń plik
.xcworkspacewygenerowany przez CocoaPods.
- Odinstaluj zależności CocoaPods, uruchamiając to polecenie w katalogu projektu:
- Wykonaj czynności opisane w naszym przewodniku instalacji , aby ręcznie dodać Firebase do projektu.
Migracja aplikacji Unity, C++ i Flutter
Pakiet Firebase Unity SDK i FlutterFire
Większość programistów Unity i Flutter nie musi podejmować żadnych działań. Zaktualizowanie Firebase do najnowszej wersji w Unity lub Flutter spowoduje automatyczne przeniesienie podstawowego menedżera zależności na platformach Apple do menedżera pakietów Swift.
Jeśli zarządzasz zależnościami niezwiązanymi z Firebase za pomocą CocoaPods, być może konieczne będzie ręczne przeniesienie tych zależności.
Pakiet Firebase C++ SDK
Jeśli dołączasz podstawowe zależności iOS za pomocą CocoaPods, możesz wykonać opisane powyżej instrukcje migracji, aby zaktualizować zależności Firebase CocoaPod i zamiast nich używać menedżera pakietów Swift.
Najczęstsze pytania
Po październiku 2026 r. muszę nadal używać CocoaPods. Jak mogę zapewnić, że moja aplikacja będzie działać?
Możesz używać starszych wersji podów Firebase lub skopiować specyfikacje podów Firebase z GitHub i hostować je we własnym repozytorium specyfikacji.
W obu przypadkach zalecamy jak najszybsze przejście z CocoaPods. Po zakończeniu obsługi CocoaPods w październiku 2026 r. nie będziemy oficjalnie obsługiwać instalowania Firebase bezpośrednio ze specyfikacji podów. Jeśli zdecydujesz się hostować własne specyfikacje podów, będziesz odpowiedzialny(-a) za ich aktualizowanie.
Dlaczego obsługa CocoaPods zostanie zakończona w październiku 2026 r., skoro pody 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 bezpieczeństwa, który umożliwia bezpieczne koordynowanie tych ostatecznych aktualizacji, oraz gwarantuje, że pakiety SDK na różne platformy, które zależą od natywnego pakietu SDK, ale mają opóźnione cykle wydawania, będą miały wystarczająco dużo czasu na przygotowanie własnych wersji.
Czy moja aplikacja przestanie działać, jeśli nie zaktualizuję jej?
Nie, to wycofanie dotyczy tylko przyszłych wersji bibliotek Firebase. Dotychczasowe wersje w CocoaPods będą nadal możliwe do zainstalowania, a wdrożone aplikacje korzystające z tych wersji podów nie będą miały problemów.
Czy ma to wpływ na płatności za projekt?
Nie.
Po migracji do menedżera pakietów Swift podczas kompilowania projektu pojawia się błąd „FirebaseLibrary not found”. Jak to naprawić?
Upewnij się, że pakiet Firebase został dodany do projektu Xcode.
Podczas dodawania pakietu Firebase Xcode wyświetli prośbę o dodanie frameworków Firebase do celów kompilacji aplikacji. Jeśli zapomnisz dodać framework na tym etapie, możesz to zrobić później w ustawieniach celu w sekcji Build Phases > Link Binary with Libraries (Fazy kompilacji > Połącz plik binarny z bibliotekami). Jeśli projekt zawiera wiele celów, upewnij się, że Firebase został dodany do prawidłowych celów.
Czy ta zmiana spowoduje przerwanie potoków CI/CD?
Nie, potoki uruchamiające pod install lub pod update będą nadal działać w przypadku dotychczasowych wersji. Nie będą jednak pobierać żadnych nowych aktualizacji biblioteki Firebase wydanych po październiku 2026 r.