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 passerà a uno stato di sola lettura e Firebase smetterà di pubblicare nuove versioni su CocoaPods a ottobre 2026.
- La mia app smetterà di funzionare? No. Le versioni esistenti delle librerie Firebase rimarranno disponibili a tempo indeterminato nel registro CocoaPods e le app che utilizzano queste versioni di CocoaPod continueranno a funzionare.
- Perché eseguire la migrazione? Per continuare a ricevere le funzionalità più recenti, i miglioramenti delle prestazioni e le correzioni critiche, devi eseguire la migrazione a Swift Package Manager o installazione manuale.
Per tenere conto dell'annuncio di CocoaPods, Firebase smetterà di pubblicare 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 interesseranno anche tutte le distribuzioni Firebase che includono l' SDK Firebase Apple nativo, inclusi l' SDK Firebase Unity, SDK Firebase C++ e FlutterFire.
Eseguire la migrazione delle app Apple
Se esegui 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) nello stesso target può portare a cicli di dipendenza complessi ed errori di compilazione. Se le 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 rimuovendo la necessità di un file .xcworkspace per la maggior parte delle configurazioni standard.
Eseguire la migrazione a 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 utilizzano intensamente gli 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, allora l'utilizzo dell'installazione manuale anziché di SPM è il percorso di migrazione più stabile da CocoaPods.
- Con Xcode chiuso, rimuovi CocoaPods dal progetto:
- Disinstalla le dipendenze di CocoaPods eseguendo il seguente comando nella directory del progetto:
pod deintegrate
- Elimina il file
.xcworkspacegenerato da CocoaPods.
- Disinstalla le dipendenze di CocoaPods eseguendo il seguente 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 dipende la tua app andando alle impostazioni del progetto in Xcode, selezionando il target dell'app e aggiornando le librerie in Frameworks, Libraries, and Embedded Content (Framework, librerie e contenuti incorporati).
Scopri di più sull'utilizzo di 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 e rilasciare SDK specifici direttamente nel progetto Xcode senza utilizzare un gestore di dipendenze.
Eseguire la migrazione all'installazione manuale
- Con Xcode chiuso, rimuovi CocoaPods dal progetto:
- Disinstalla le dipendenze di CocoaPods eseguendo il seguente comando nella directory del progetto:
pod deintegrate
- Elimina il file
.xcworkspacegenerato da CocoaPods.
- Disinstalla le dipendenze di CocoaPods eseguendo il seguente comando nella directory del progetto:
- Segui i passaggi della nostra guida all'installazione per aggiungere Firebase al tuo progetto manualmente.
Eseguire la migrazione delle app Unity, C++ e Flutter
SDK Firebase Unity e FlutterFire
La maggior parte degli sviluppatori Unity e Flutter non deve eseguire alcuna azione. L'aggiornamento all'ultima versione di Firebase su Unity o Flutter eseguirà automaticamente la migrazione del gestore di 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 hai incluso le dipendenze iOS sottostanti tramite CocoaPods, puoi seguire le istruzioni di migrazione riportate sopra per aggiornare le dipendenze di CocoaPod di Firebase in modo che utilizzino Swift Package Manager.
Domande frequenti
Devo continuare a utilizzare CocoaPods dopo ottobre 2026. Come faccio a mantenere in esecuzione la mia app?
Puoi utilizzare le versioni precedenti dei pod Firebase o copiare le specifiche dei pod Firebase da GitHub e ospitarle 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 l'interruzione del supporto di CocoaPods a ottobre 2026. Se scegli di ospitare le tue specifiche dei pod, sarà tua responsabilità mantenerle aggiornate.
Perché il supporto di CocoaPods verrà interrotto a ottobre 2026, quando CocoaPods può essere pubblicato fino a dicembre 2026?
Abbiamo scelto ottobre per assicurarci che le versioni finali pubblicate su CocoaPods siano stabili prima del blocco del registro a dicembre. Questa tempistica fornisce un margine 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 necessario per preparare le proprie release.
La mia app smetterà di funzionare se non la aggiorno?
No, questa deprecazione riguarda solo le release future delle librerie Firebase. Le versioni esistenti in CocoaPods rimarranno installabili e le app distribuite che utilizzano queste versioni dei pod non saranno interessate.
Questa modifica influisce sulla fatturazione del progetto?
No.
Quando compilo il progetto dopo la migrazione a Swift Package Manager, ricevo l'errore "FirebaseLibrary not found". Come faccio a risolvere il problema?
Assicurati di aver aggiunto il pacchetto Firebase al progetto Xcode.
Quando aggiungi il pacchetto Firebase, Xcode ti chiederà di aggiungere i framework Firebase ai target di compilazione dell'app. Se dimentichi di aggiungere un framework durante questo passaggio, puoi sempre aggiungerlo in un secondo momento nelle impostazioni del target in Build Phases > Link Binary with Libraries (Fasi di compilazione > Collega 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 recupereranno gli aggiornamenti delle nuove librerie Firebase rilasciati dopo ottobre 2026.