Cette page fournit des conseils et des informations de dépannage pour les problèmes spécifiques aux plates-formes Apple que vous pouvez rencontrer lorsque vous utilisez Firebase.
Vous rencontrez d'autres difficultés ou vous ne trouvez pas votre problème ci-dessous ? Consultez la FAQ principale de Firebase pour obtenir des informations plus générales ou
spécifiques à un produit.
Vous pouvez également consulter le
dépôt GitHub du SDK Firebase pour les plates-formes Apple
pour obtenir une liste à jour des problèmes signalés et des informations de dépannage. Nous vous encourageons également à y signaler vos propres problèmes liés au SDK Firebase pour les plates-formes Apple.
Quelles versions de Xcode Firebase prend-il en charge ?
Firebase prend en charge jusqu'à deux versions majeures de Xcode, à l'exclusion des versions
de Xcode qui ne sont plus prises en charge par Apple. Par exemple, à partir de mars 2019,
Apple a exigé qu’au moins iOS 12 soit installé sur toutes les applications, ce qui signifie que la prise en charge de Xcode 9 a été
abandonnée et que Xcode 10 était la seule version majeure prise en charge.
Les modifications apportées à la prise en charge de versions mineures ou de correctifs spécifiques de Xcode
(par exemple, de 9.2.0 à 9.4.1) sont déterminées en fonction des besoins du
SDK Firebase pour les plates-formes Apple et d'une enquête sur l'utilisation par les développeurs. Ces modifications
sont reflétées dans les
notes de version du SDK Firebase pour les plates-formes Apple
et sur la page de configuration du SDK Firebase pour les plates-formes Apple.
Pour connaître la version minimale de Xcode prise en charge par le SDK, consultez
les exigences listées dans
Ajouter Firebase à votre projet Apple.
La prise en charge de Firebase pour les versions bêta de Xcode est disponible dans la mesure du possible. Les développeurs peuvent suivre et signaler les problèmes dans le
dépôt du SDK Firebase pour les plates-formes Apple sur GitHub.
Mon application demande à l'utilisateur son mot de passe pour accéder aux éléments du trousseau sur macOS. Comment puis-je résoudre le problème ?
Passez votre dépendance Firebase à la version 9.6.0 ou ultérieure, puis ajoutez la
[fonctionnalité de partage du trousseau](/docs/ios/troubleshooting-faq#macos-keychain-sharing)
à votre cible.
Pourquoi Firebase nécessite-t-il la fonctionnalité de partage du trousseau sur macOS ?
Les SDK Firebase utilisent le trousseau pour stocker des informations telles que l'ID d'installation Firebase
utilisé pour FCM. Sans accès au trousseau, les SDK Firebase peuvent ne pas
fonctionner correctement. Le trousseau macOS se comporte différemment du trousseau de style iOS
utilisé sur d'autres plates-formes (iOS, tvOS, macCatalyst,
et watchOS).
Sur macOS, les applications utilisent un trousseau partagé qui peut être modifié par d'autres applications et
processus. Contrairement à iOS, il n'existe pas de trousseau en bac à sable auquel l'application a
un accès implicite. Ainsi, lorsqu'une application Mac interagit avec le trousseau, le système
demande à l'utilisateur d'y accéder, car l'application Mac peut modifier un élément du trousseau
qu'elle n'a pas créé. Pour résoudre cette incohérence, Firebase interroge le
trousseau avec la kSecUseDataProtectionKeychain clé, qui indique
à l'application d'interroger un élément du trousseau faisant partie d'un groupe d'accès au trousseau
(il s'agit du comportement par défaut sur d'autres plates-formes). La fonctionnalité de partage du trousseau
est requise, car l’application en a besoin pour synthétiser un groupe d’accès qui peut être
partagé entre ses cibles, ce qui lui permet d’accéder librement aux éléments du trousseau dans le groupe d’accès.
Pour en savoir plus, consultez la documentation d'Apple sur le trousseau
.
Dans les versions 13 et ultérieures de Xcode, pourquoi mes applications UIKit ne peuvent-elles pas ouvrir certaines
URL que j'ai enregistrées
dans mon fichier Info.plist ?
Apple a introduit une limite de 50 LSApplicationQueriesSchemes
entrées dans les fichiers Info.plist. En 2015, Apple a introduit
LSApplicationQueriesSchemes pour limiter le nombre de requêtes d'URL
que chaque application pouvait effectuer. Avec la sortie de Xcode 13, ces limites sont appliquées,
alors que dans Xcode 12 et les versions antérieures, il n'y avait pas de limite effective au nombre de
schémas.
Certains produits Firebase, tels que Firebase Authentication et Firebase Dynamic Links,
nécessitent l'utilisation de schémas d'URL personnalisés pour rediriger vers votre application. Ces
URL sont conformes à un schéma d'URL concis et cohérent qui ne devrait pas être comptabilisé
de manière significative par rapport à la limite de 50 schémas de liens.
Notez que pour les applications qui continuent d'enregistrer plus de 50
LSApplicationQueriesSchemes, certains schémas seront
ignorés en mode silencieux. L'application peut ne pas être en mesure d'exécuter certains liens profonds,
en fonction de l'ordre dans lequel ils sont ajoutés.
Quelles mentions Open Source dois-je inclure dans mon application ?
Pour les plates-formes Apple, le SDK Firebase est distribué sous la licence Apache 2.0.