CocoaPods ha annunciato che diventerà di sola lettura a dicembre 2026, dopodiché non sarà più possibile pubblicare nuove versioni dei pod. Le sezioni seguenti forniscono ulteriori informazioni su questa modifica e spiegano come eseguire la migrazione delle app ad altri gestori di installazione.
Panoramica
- Che cosa cambia? CocoaPods sta passando a uno stato di sola lettura. Firebase 12 è l'ultima versione principale pubblicata su CocoaPods e Firebase interromperà la pubblicazione di nuove versioni su CocoaPods a ottobre 2026.
- La mia app smetterà di funzionare? No. Le versioni esistenti delle librerie Firebase rimarranno disponibili nel registry di CocoaPods e le tue app che utilizzano queste versioni di CocoaPods continueranno a funzionare finché continuerà il supporto dell'ecosistema CocoaPods.
- Perché migrare? Per continuare a ricevere le funzionalità, i miglioramenti delle prestazioni e le correzioni critiche più recenti, devi eseguire la migrazione a Swift Package Manager o all'installazione manuale.
Per adattarsi all'annuncio di CocoaPods, Firebase interromperà la pubblicazione di nuove versioni su CocoaPods a ottobre 2026. Queste modifiche interessano tutti i seguenti pod e le relative sottodipendenze:
| Pod Firebase interessati | ||
|---|---|---|
Firebase |
FirebaseAuth |
FirebaseInstallations |
FirebaseABTesting |
FirebaseCore |
FirebaseMessaging |
FirebaseAI |
FirebaseCrashlytics |
FirebaseMLModelDownloader |
FirebaseAILogic |
FirebaseDatabase |
FirebasePerformance |
FirebaseAnalytics |
FirebaseFirestore |
FirebaseRemoteConfig |
FirebaseAppCheck |
FirebaseFunctions |
FirebaseStorage |
FirebaseAppDistribution |
FirebaseInAppMessaging |
Queste modifiche influiranno anche su tutte le distribuzioni di Firebase che includono l'SDK Firebase Apple nativo, tra cui l'SDK Firebase Unity, l'SDK Firebase C++ e FlutterFire.
Esegui la migrazione delle tue app Apple
Se stai eseguendo la migrazione di altre dipendenze (non Firebase) da CocoaPods, tieni presente che la best practice del settore è utilizzare un unico metodo di installazione per l'intero progetto. La combinazione di CocoaPods e Swift Package Manager (SPM) all'interno dello stesso target può portare a cicli di dipendenza complessi ed errori di build. Se le tue dipendenze non Firebase non supportano ancora SPM, l'utilizzo dell'installazione manuale per le librerie Firebase è il modo più stabile per consolidare il flusso di lavoro durante la migrazione.
Swift Package Manager (SPM)
Che cos'è Swift Package Manager?
Swift Package Manager (SPM) è lo strumento nativo di Apple per la gestione della distribuzione del codice. È integrato direttamente in Xcode, eliminando la necessità di strumenti CLI esterni come CocoaPods e semplificando la struttura del progetto eliminando la necessità di un .xcworkspace per la maggior parte delle configurazioni standard.
Esegui la migrazione all'utilizzo di Swift Package Manager
Per la maggior parte dei progetti, la migrazione a Swift Package Manager non richiede la modifica del codice dell'applicazione, a meno che il progetto non abbia configurazioni Xcode personalizzate o dipendenze che fanno un uso intensivo degli script di installazione di CocoaPods.
Ecco come eseguire la migrazione a Swift Package Manager da CocoaPods:
- Verifica che ogni dipendenza della tua app supporti Swift Package Manager. Tutte le librerie Firebase supportano SPM, ma dovrai verificare il supporto di SPM per le dipendenze non Firebase nei relativi repository GitHub o nelle pagine dei prodotti. Se alcune delle tue dipendenze non Firebase non supportano SPM, l'utilizzo dell'installazione manuale anziché di SPM è il percorso di migrazione più stabile per abbandonare CocoaPods.
- Con Xcode chiuso, rimuovi CocoaPods dal progetto:
- Disinstalla le dipendenze di CocoaPods eseguendo questo comando nella directory del progetto:
pod deintegrate
- Elimina il file
.xcworkspacegenerato da CocoaPods.
- Disinstalla le dipendenze di CocoaPods eseguendo questo comando nella directory del progetto:
- In Xcode, aggiorna il progetto con le dipendenze di Swift Package Manager:
- Apri il file
.xcodeprojdel progetto tramite Xcode. - Aggiungi di nuovo le dipendenze dell'app utilizzando File > Add Package Dependencies (File > Aggiungi dipendenze pacchetto).
- Apri il file
- Una volta aggiunto il pacchetto Firebase, puoi aggiornare le librerie Firebase da cui dipendi andando alle impostazioni del progetto in Xcode, selezionando il target dell'app e aggiornando le librerie in Framework, librerie e contenuti incorporati.
Scopri di più su come utilizzare SPM in Xcode nella documentazione di Apple.
Installazione manuale
Che cos'è l'installazione manuale?
L'installazione manuale prevede il download dell'archivio Firebase.zip, che contiene XCFramework precompilati per tutti i prodotti Firebase. In questo modo puoi trascinare SDK specifici direttamente nel tuo progetto Xcode senza utilizzare un gestore delle dipendenze.
Esegui la migrazione all'installazione manuale
- Con Xcode chiuso, rimuovi CocoaPods dal progetto:
- Disinstalla le dipendenze di CocoaPods eseguendo questo comando nella directory del progetto:
pod deintegrate
- Elimina il file
.xcworkspacegenerato da CocoaPods.
- Disinstalla le dipendenze di CocoaPods eseguendo questo comando nella directory del progetto:
- Segui i passaggi della nostra guida all'installazione per aggiungere manualmente Firebase al tuo progetto.
Esegui la migrazione delle tue app Unity, C++ e Flutter
SDK Firebase Unity e FlutterFire
Non è richiesta alcuna azione per la maggior parte degli sviluppatori Unity e Flutter. L'aggiornamento all'ultima versione di Firebase su Unity o Flutter eseguirà automaticamente la migrazione del gestore delle dipendenze sottostante sulle piattaforme Apple a Swift Package Manager.
Tieni presente che se gestisci dipendenze non Firebase tramite CocoaPods, potresti dover eseguire la migrazione manualmente.
SDK Firebase C++
Se includevi le dipendenze iOS sottostanti tramite CocoaPods, puoi seguire le istruzioni di migrazione riportate sopra per aggiornare le dipendenze CocoaPod di Firebase in modo da utilizzare Swift Package Manager.
Domande frequenti
Devo continuare a utilizzare CocoaPods dopo ottobre 2026. Come faccio a mantenere l'app in esecuzione?
Puoi utilizzare le versioni precedenti dei pod Firebase o copiare i podspec Firebase da GitHub e ospitarli nel tuo repository di specifiche.
In entrambi i casi, ti consigliamo di eseguire la migrazione da CocoaPods il prima possibile. Non forniremo assistenza ufficiale per l'installazione di Firebase direttamente dal podspec dopo che il supporto di CocoaPods non sarà più disponibile a ottobre 2026. Se scegli di ospitare i tuoi podspec, sarai responsabile di mantenerli aggiornati.
Perché il supporto di CocoaPods verrà interrotto a ottobre 2026, quando i pod possono essere pubblicati fino a dicembre 2026?
Abbiamo scelto ottobre per garantire che le versioni finali pubblicate su CocoaPods siano stabili prima del blocco del registry a dicembre. Questa cronologia fornisce un margine di tempo necessario per coordinare in sicurezza questi aggiornamenti finali e garantisce che gli SDK multipiattaforma, che dipendono dall'SDK nativo ma hanno cicli di rilascio ritardati, abbiano tutto il tempo per preparare le proprie release.
La mia app smetterà di funzionare se non la aggiorno?
No, questo ritiro interessa solo le release future delle librerie Firebase. Firebase 12 è l'ultima versione principale pubblicata su CocoaPods e le versioni esistenti (v12 e precedenti) in CocoaPods rimarranno installabili e funzionali finché continuerà il supporto dell'ecosistema CocoaPods.
Questo influisce sulla fatturazione del progetto?
No.
Quando compilo il mio progetto dopo la migrazione a Swift Package Manager, ricevo un errore "FirebaseLibrary non trovata". Come faccio a risolvere il problema?
Assicurati di aver aggiunto il pacchetto Firebase al tuo progetto Xcode.
Quando aggiungi il pacchetto Firebase, Xcode ti chiederà di aggiungere i framework Firebase ai target di build della tua app. Se dimentichi di aggiungere un framework durante questo passaggio, puoi sempre aggiungerlo in un secondo momento nelle impostazioni della destinazione in Build Phases > Link Binary with Libraries (Fasi di build > Collega file binario con librerie). Se il progetto contiene più target, assicurati di aver aggiunto Firebase ai target corretti.
Questa transizione interromperà le mie pipeline CI/CD?
No, le pipeline che eseguono pod install o pod update continueranno a funzionare per le versioni esistenti. Tuttavia, non riceveranno nuovi aggiornamenti della libreria Firebase
rilasciati dopo ottobre 2026.