Comprendre Firebase sur les plates-formes Apple

Lorsque vous développez votre application Apple à l'aide de Firebase, vous pouvez découvrir des concepts inconnus ou spécifiques à Firebase. Cette page vise à répondre à ces questions ou à vous diriger vers des ressources pour en savoir plus.

Si vous avez des questions sur un sujet qui n'est pas abordé sur cette page, n'hésitez pas à consulter l'une de nos communautés en ligne. Nous ajouterons régulièrement de nouveaux sujets à cette page. N'hésitez donc pas à revenir pour voir si nous avons ajouté le sujet qui vous intéresse.

Compatibilité des bibliothèques Firebase par plate-forme

Le tableau suivant décrit les bibliothèques Firebase compatibles avec les plates-formes Apple. Pour le moment, visionOS et watchOS ne sont pris en charge que par la communauté. Pour obtenir des instructions d'installation et connaître les problèmes connus, consultez le dépôt GitHub du SDK des plates-formes Apple Firebase.

Bibliothèque iOS macOS Mac
Catalyst
tvOS visionOS watchOS
A/B Testing
Analytics v8.9.0 et versions ultérieures v8.9.0 et versions ultérieures v8.9.0 et versions ultérieures
Analytics sans identifiant de l'annonce v8.9.0+ v8.9.0 et versions ultérieures v8.9.0 et versions ultérieures
Conversion sur l'appareil Analytics
App Check Fournisseur DeviceCheck WatchOS 9 ou version ultérieure
App Check Fournisseur d'attestations pour applications iOS 14 et versions ultérieures macOS 11 ou version ultérieure Catalyst 14 ou version ultérieure tvOS 15 et versions ultérieures WatchOS 9 ou version ultérieure
Fournisseurs personnalisés et de débogage App Check
App Distribution
Authentication partiel partiel partiel partiel partiel
Cloud Firestore Distributions sources uniquement
Cloud Functions
Cloud Messaging
Cloud Storage
Crashlytics
Dynamic Links
Installations Firebase
Firebase ML Outil de téléchargement de modèles
In-App Messaging
Performance Monitoring
Realtime Database
Remote Config
Vertex AI in Firebase iOS 15 et versions ultérieures macOS 12 ou version ultérieure Catalyst 15+ tvOS 15 ou version ultérieure (assistance de la communauté uniquement) WatchOS 8 ou version ultérieure

Clips d'application

La plupart des bibliothèques Firebase sont compilées et exécutées dans une cible d'application Clip, mais beaucoup sont limitées en raison de restrictions sous-jacentes de l'OS. Voici quelques problèmes connus:

  • Les liens dynamiques ne peuvent pas rediriger les utilisateurs vers un App Clip s'ils appuient sur un lien sans que l'application soit installée.
  • Firestore et Realtime Database ne peuvent pas charger de données dans les applications Clips en raison d'une dépendance CFStream sous-jacente.

Pour obtenir la liste complète des problèmes connus liés aux extraits d'application, consultez le dépôt GitHub Firebase.

GoogleService-Info.plist

Pour ajouter Firebase à votre projet Apple, vous devez ajouter le fichier de configuration GoogleService-Info.plist à votre projet. Si vous souhaitez utiliser plusieurs projets Firebase dans une même application, consultez la documentation sur la configuration de plusieurs projets.

Consultez la documentation de référence Swift pour en savoir plus sur le processus d'initialisation de l'application Firebase.

Swift Package Manager

Pour en savoir plus sur l'intégration de Swift Package Manager, consultez notre guide.

Extensions Swift

Les extensions Swift du SDK de la plate-forme Apple Firebase étaient auparavant de petits modules complémentaires Open Source aux bibliothèques existantes de la plate-forme Apple Firebase, qui permettaient à votre code d'utiliser des fonctionnalités spécifiques au langage Swift. Ces API ont depuis été ajoutées directement aux bibliothèques principales et n'ont pas besoin d'être incluses séparément. Si vous aviez auparavant un SDK d'extension Swift dans votre codebase, consultez le guide de migration pour obtenir des instructions de mise à niveau.

SwiftUI

Firebase est entièrement compatible avec SwiftUI, mais la configuration sera légèrement différente de celle des applications UIKit pour que Firebase fonctionne correctement dans un environnement entièrement SwiftUI. Pour en savoir plus, consultez cet article de blog de Peter Friese.

Les applications SwiftUI doivent désactiver le forçage de type en raison d'un problème connu. Pour en savoir plus, consultez la section Mélangement du délégué d'application.

Mélangement du délégué d'application

Firebase swizzle certaines méthodes de la classe de délégué d'application de votre application pour connecter automatiquement certains services Firebase aux rappels de l'OS, comme FCM et le jeton APN. Vous pouvez désactiver le mélange dans votre application en ajoutant l'indicateur FirebaseAppDelegateProxyEnabled dans le fichier Info.plist de l'application et en le définissant sur NO.

Quatre produits Firebase utilisent le mélange de l'App Delegate: Analytics, App Distribution, Authentication et FCM. Si vous avez désactivé le forçage de l'ordre des éléments dans votre application et que vous utilisez l'un des produits suivants, consultez le guide spécifique au produit pour découvrir comment l'utiliser sans forçage de l'ordre des éléments:

Compatibilité avec iOS 14

iOS 14 apporte de nouvelles modifications aux autorisations des utilisateurs concernant leur identifiant publicitaire. Pour savoir si votre application est concernée, consultez le guide de préparation à iOS 14.

Assistance continue pour Objective-C

Pour faciliter la maintenance de la documentation de nos plates-formes Apple, Firebase a décidé de se concentrer sur les extraits et les exemples de code Swift dans nos guides et autres supports pour les développeurs. Les extraits Objective-C seront supprimés de nos guides à partir du 1er janvier 2024. Nous continuerons de mettre à jour la documentation de référence pour Objective-C pour tous les produits Firebase.

Ressources Open Source pour les SDK Firebase pour les plates-formes Apple

Firebase est compatible avec le développement Open Source, et nous encourageons les contributions et les commentaires de la communauté.

SDK Firebase pour les plates-formes Apple

Tous les SDK Firebase pour les plates-formes Apple, à l'exception de Analytics, sont développés en tant que bibliothèques Open Source dans notre dépôt GitHub Firebase public.

FirebaseUI

FirebaseUI est un ensemble de bibliothèques d'utilitaires basées sur Firebase, y compris un flux d'UI intégré pour l'authentification et des utilitaires de données pour Cloud Firestore et Realtime Database. Pour en savoir plus sur FirebaseUI, consultez notre page GitHub.

Exemples de démarrage rapide

Firebase gère une collection d'exemples de démarrage rapide pour la plupart des API Firebase sur iOS. Vous trouverez ces guides de démarrage rapide dans notre dépôt de guides de démarrage rapide public GitHub Firebase.

Vous pouvez ouvrir chaque tutoriel de démarrage rapide dans Xcode, puis les exécuter sur un appareil mobile ou un simulateur. Vous pouvez également utiliser ces guides de démarrage rapide comme exemple de code pour utiliser les SDK Firebase.