Questa pagina offre suggerimenti e procedure di risoluzione dei problemi specifici della piattaforma Apple che potresti riscontrare durante l'utilizzo di Firebase.
Hai altri problemi o non trovi il tuo problema descritto di seguito? Assicurati di consultare le domande frequenti principali su Firebase per altre domande frequenti generali o specifiche per prodotto.
Puoi anche consultare il
repository GitHub dell'SDK Firebase per le piattaforme Apple
per un elenco aggiornato dei problemi segnalati e della risoluzione dei problemi. Ti invitiamo anche a segnalare i tuoi problemi relativi all'SDK Firebase per le piattaforme Apple.
Quali versioni di Xcode sono supportate da Firebase?
Firebase supporta fino a due versioni principali di Xcode, escluse le versioni di Xcode non più supportate da Apple. Ad esempio, a partire da marzo 2019,
Apple ha richiesto almeno iOS 12 su tutte le app, il che significa che il supporto di Xcode 9 è stato ritirato e Xcode 10 era l'unica versione principale supportata.
Le modifiche al supporto di versioni minori o patch specifiche di Xcode
(ad esempio da 9.2.0 a 9.4.1) vengono determinate in base alle esigenze dell'SDK Firebase per le piattaforme Apple e a un sondaggio sull'utilizzo da parte degli sviluppatori. Queste modifiche
sono riportate nelle
note di rilascio dell'SDK per le piattaforme Apple Firebase
e nella pagina di configurazione dell'SDK per le piattaforme Apple Firebase.
Per visualizzare la versione minima di Xcode supportata dall'SDK, controlla i requisiti elencati in Aggiungere Firebase al progetto Apple.
L'assistenza Firebase per le release beta di Xcode è disponibile su una base "best effort". Gli sviluppatori possono monitorare e inviare i problemi nel
repository dell'SDK delle piattaforme Apple di Firebase su GitHub.
La mia app chiede all'utente la password per accedere agli elementi del Portachiavi su macOS. Come faccio a risolvere il problema?
Esegui l'upgrade della dipendenza Firebase alla versione 9.6.0 o successive e aggiungi la [funzionalità di condivisione portachiavi](/docs/ios/troubleshooting-faq#macos-keychain-sharing) alla destinazione.
Perché Firebase richiede la funzionalità di condivisione del Portachiavi su macOS?
Gli SDK Firebase utilizzano il Portachiavi per memorizzare informazioni come l'ID installazione Firebase utilizzato per FCM. Senza l'accesso al Portachiavi, gli SDK Firebase potrebbero non funzionare correttamente. Il portachiavi macOS si comporta in modo diverso rispetto al portachiavi in stile iOS utilizzato su altre piattaforme (iOS, tvOS, macCatalyst e watchOS).
Su macOS, le app utilizzano un portachiavi condiviso che può essere modificato da altre app e da altri processi. A differenza di iOS, non esiste un portachiavi in sandbox a cui l'app ha accesso implicito. Di conseguenza, quando un'app per Mac interagisce con il portachiavi, il sistema richiede l'accesso all'utente perché l'app Mac potrebbe modificare un elemento portachiavi che non ha creato. Per risolvere questa discrepanza, Firebase esegue query sul portachiavi con la chiave kSecUseDataProtectionKeychain
, che indica all'app di eseguire query su un elemento del portachiavi che fa parte di un gruppo di accesso al portachiavi (questo è il comportamento predefinito su altre piattaforme). La funzionalità di condivisione del portachiavi è obbligatoria perché l'app ne ha bisogno per sintetizzare un gruppo di accesso che può essere condiviso tra i relativi target, concedendo così all'app l'autorizzazione per accedere liberamente agli elementi del portachiavi nel gruppo di accesso.
Per saperne di più, consulta la
documentazione di Portachiavi
di Apple.
In Xcode 13 e versioni successive, perché le mie app UIKit non possono aprire alcuni
URL che ho registrato
nel mio Info.plist?
Apple ha introdotto un limite di 50 voci LSApplicationQueriesSchemes
nei file Info.plist
. Nel 2015, Apple ha introdotto
LSApplicationQueriesSchemes
per limitare il numero di query sull'URL
che ogni app poteva effettuare. Con il rilascio di Xcode 13, questi limiti vengono applicati, mentre in Xcode 12 e versioni precedenti non esisteva un limite effettivo al numero di schemi.
Alcuni prodotti Firebase, come Firebase Authentication e Firebase Dynamic Links,
richiedono l'utilizzo di schemi URL personalizzati per reindirizzare alla tua applicazione. Questi
URL sono conformi a uno schema URL conciso e coerente che non dovrebbe incidere
in modo significativo sul limite di 50 schemi di link.
Tieni presente che per le app che continuano a registrare più di 50
LSApplicationQueriesSchemes
, alcuni schemi verranno
ignorati silenziosamente. L'app potrebbe non essere in grado di eseguire determinati link diretti,
a seconda dell'ordine in cui vengono aggiunti.