Informazioni su Firebase sulle piattaforme Apple

Durante lo sviluppo dell'app Apple utilizzando Firebase, potresti scoprire concetti sconosciuti o specifici di Firebase. Questa pagina ha lo scopo di rispondere a queste domande o di indirizzarti alle risorse per saperne di più.

Se hai domande su un argomento non trattato in questa pagina, non esitare a visitare una delle nostre community online. Aggiorneremo periodicamente questa pagina con nuovi argomenti, quindi ricontrolla per vedere se abbiamo aggiunto l'argomento di cui ti interessa saperne di più !

Supporto della libreria Firebase per piattaforma

La seguente tabella descrive quali librerie Firebase sono compatibili con quali piattaforme Apple. Per il momento, visionOS e watchOS sono supportati solo dalla community. Consulta il repository GitHub dell'SDK delle piattaforme Apple di Firebase per le istruzioni di installazione e i problemi noti.

Libreria iOS macOS Mac
Catalyst
tvOS visionOS watchOS
A/B Testing
Firebase AI Logic 1 iOS 15+ macOS 12+ Catalyst 15+ tvOS 15+ (assistenza solo dalla community) watchOS 8+
Analytics v8.9.0+ v8.9.0+ v8.9.0+
Analytics senza ID pubblicità v8.9.0+ v8.9.0+ v8.9.0+
Analytics conversione in-device
App Check Provider DeviceCheck watchOS 9+
Provider App Attest di App Check iOS 14+ macOS 11+ Catalyst 14+ tvOS 15+ watchOS 9+
App Check provider personalizzati e di debug
App Distribution
Authentication parziale parziale parziale parziale parziale
Cloud Firestore Solo distribuzioni di origine
Cloud Functions
Cloud Messaging
Cloud Storage
Crashlytics
Data Connect
Dynamic Links
Firebase installazioni
Firebase ML Model Downloader
In-App Messaging
Performance Monitoring
Realtime Database
Remote Config

1 Firebase AI Logic era precedentemente chiamato "Vertex AI in Firebase".

App clip

La maggior parte delle librerie Firebase verrà compilata ed eseguita in una destinazione di app clip, tuttavia molte sono limitate a causa delle restrizioni del sistema operativo sottostante. I problemi noti includono:

  • I Dynamic Links non possono inviare gli utenti a un'app clip se toccano un link senza che l'app sia installata.
  • Firestore e Realtime Database non possono caricare i dati nelle app clip a causa di una dipendenza CFStream sottostante.

Consulta il repository GitHub di Firebase per un elenco completo dei problemi noti relativi alle app clip.

GoogleService-Info.plist

Nell'ambito dell'aggiunta di Firebase al tuo progetto Apple, devi aggiungere il GoogleService-Info.plist file di configurazione al progetto. Se vuoi utilizzare più progetti Firebase in una singola app, consulta la documentazione per la configurazione di più progetti.

Consulta la documentazione di riferimento di Swift per saperne di più sul processo di inizializzazione dell'app Firebase.

Swift Package Manager

Scopri di più sull'integrazione di Swift Package Manager in nostra guida.

Estensioni Swift

Le estensioni Swift dell'SDK della piattaforma Apple di Firebase erano in precedenza piccoli componenti aggiuntivi open source alle librerie della piattaforma Apple di Firebase esistenti che consentivano al codice di utilizzare funzionalità specifiche del linguaggio Swift. Queste API sono state aggiunte direttamente alle librerie principali e non devono essere incluse separatamente. Se in precedenza avevi un SDK di estensione Swift nel tuo codebase, consulta la guida alla migrazione per le istruzioni di upgrade.

SwiftUI

Firebase supporta completamente SwiftUI, anche se la configurazione sarà leggermente diversa dalle app UIKit per consentire a Firebase di funzionare correttamente in un ambiente completamente SwiftUI ambiente. Per maggiori dettagli, consulta questo post del blog di Peter Friese.

Le applicazioni SwiftUI devono disattivare lo swizzling a causa di un problema noto. Per maggiori dettagli, consulta la sezione Swizzling del delegato dell'app.

Swizzling del delegato dell'app

Firebase esegue lo swizzling di alcuni metodi nella classe del delegato dell'app per connettere automaticamente determinati servizi Firebase ai callback del sistema operativo, come FCM e il token APNs. Puoi disattivare lo swizzling nella tua app aggiungendo il flag FirebaseAppDelegateProxyEnabled nel file Info.plist dell'app e impostandolo su NO.

Quattro prodotti Firebase utilizzano lo swizzling del delegato dell'app: Analytics, App Distribution, Authentication, e FCM. Se hai disattivato lo swizzling nella tua applicazione e utilizzi uno dei seguenti prodotti, consulta la guida specifica del prodotto per scoprire come utilizzarlo senza swizzling:

Supporto di iOS 14

iOS 14 include nuove modifiche alle autorizzazioni utente relative all'identificatore pubblicitario dell'utente. Per maggiori dettagli sul fatto che la tua app possa essere interessata o meno, consulta la guida alla preparazione per iOS 14.

Supporto continuo per Objective-C

Per semplificare la manutenzione della documentazione delle piattaforme Apple, Firebase ha deciso di concentrarsi su snippet e esempi di codice Swift nelle nostre guide e in altri materiali per sviluppatori. Gli snippet Objective-C verranno rimossi dalle nostre guide a partire dal 1° gennaio 2024. Continueremo a mantenere aggiornata la documentazione di riferimento per Objective-C per tutti i prodotti Firebase.

Risorse open source per gli SDK della piattaforma Apple di Firebase

Firebase supporta lo sviluppo open source e incoraggiamo i contributi e i feedback della community.

SDK della piattaforma Apple di Firebase

Tutti gli SDK Firebase per le piattaforme Apple, ad eccezione di Analytics, sono sviluppati come librerie open source nel nostro repository GitHub pubblico di Firebase.

FirebaseUI

FirebaseUI è un insieme di librerie di utilità basate su Firebase, tra cui un flusso dell'interfaccia utente integrato per l'autenticazione e le utilità dei dati per Cloud Firestore e Realtime Database. Per maggiori dettagli su FirebaseUI, consulta la nostra pagina GitHub.

Esempi di avvio rapido

Firebase gestisce una raccolta di esempi di avvio rapido per la maggior parte delle API Firebase su iOS. Trova questi avvii rapidi nel nostro repository GitHub pubblico di Firebase di avvio rapido.

Puoi aprire ogni avvio rapido in Xcode, quindi eseguirli su un dispositivo mobile o un simulatore. In alternativa, puoi utilizzare questi avvii rapidi come codice di esempio per l'utilizzo degli SDK Firebase.