Dépannage et Questions fréquentes sur les plates-formes Apple et Firebase
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Cette page propose des conseils et des solutions de dépannage pour les problèmes spécifiques à la plate-forme 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 ? N'oubliez pas de consulter les questions fréquentes principales sur Firebase pour en savoir plus sur Firebase en général ou sur des produits spécifiques.
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 solutions de dépannage. Nous vous encourageons également à y signaler vos propres problèmes liés au SDK des plates-formes Firebase pour Apple.
Quelles versions de Xcode sont compatibles avec Firebase ?
Firebase est compatible avec un maximum de deux versions majeures de Xcode, à l'exception des versions de Xcode qui ne sont plus prises en charge par Apple. Par exemple, à partir de mars 2019, Apple a exigé au moins iOS 12 sur toutes les applications, ce qui signifie que la compatibilité avec Xcode 9 a été abandonnée et que Xcode 10 était la seule version majeure compatible.
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 ?
Mettez à niveau votre dépendance Firebase vers la version 9.6.0 ou ultérieure, puis ajoutez la [fonctionnalité de partage du trousseau d'accès](/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, il est possible que les SDK Firebase ne fonctionnent pas 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 d'accès en bac à sable auquel l'application a un accès implicite. Ainsi, lorsqu'une application Mac interagit avec le trousseau, le système invite l'utilisateur à autoriser l'accès, 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 clé kSecUseDataProtectionKeychain, ce qui indique à l'application d'interroger un élément du trousseau qui fait partie d'un groupe d'accès au trousseau (comportement par défaut sur les 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 permet à l'application d'accéder librement aux éléments du trousseau dans le groupe d'accès.
Dans Xcode 13 et versions ultérieures, 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 entrées LSApplicationQueriesSchemes 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 d'Xcode 13, ces limites sont appliquées, alors que dans Xcode 12 et les versions antérieures, le nombre de schémas n'était pas limité.
Certains produits Firebase, comme Firebase Authentication et Firebase Dynamic Links, nécessitent l'utilisation de schémas d'URL personnalisés pour rediriger vers votre application. Ces URL respectent un schéma d'URL concis et cohérent qui ne devrait pas être comptabilisé de manière significative dans 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 silencieusement. Il est possible que l'application ne puisse pas exécuter certains liens profonds, selon l'ordre dans lequel ils sont ajoutés.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/05 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/05 (UTC)."],[],[],null,["\u003cbr /\u003e\n\nThis page offers tips and troubleshooting for Apple platform-specific issues\nthat you might encounter when using Firebase.\n\nHave other challenges or don't see your issue outlined below? Make sure to check\nout the [main Firebase FAQ](/support/faq) for more pan-Firebase or\nproduct-specific FAQ.\n\nYou can also check out the\n[Firebase Apple platforms SDK GitHub repo](https://github.com/firebase/firebase-ios-sdk/issues)\nfor an up-to-date list of reported issues and troubleshooting. We encourage you\nto file your own Firebase Apple platforms SDK related issues there, too! \n\nWhat versions of Xcode does Firebase support?\n\nFirebase supports up to two major versions of Xcode, not including versions\nof Xcode that Apple no longer supports. For example, starting in March 2019,\nApple required at least iOS 12 on all apps, meaning Xcode 9 support was\ndropped and Xcode 10 was the only major version supported.\n\nChanges to support for specific minor or patch versions of Xcode\n(for example, 9.2.0 to 9.4.1) are determined based on the needs of the\nFirebase Apple platforms SDK and a survey of developer usage. These changes\nare reflected in the\n[Firebase Apple platforms SDK release notes](/support/release-notes/ios)\nand on the [Firebase Apple platforms SDK setup page](/docs/ios/setup).\n\nTo see the minimum Xcode version supported by the SDK, check\nthe requirements listed in\n[Add Firebase to your Apple project](/docs/ios/setup).\n\nFirebase support for Beta releases of Xcode is available on a \"best effort\"\nbasis. Developers can track and submit issues in the\n[Firebase Apple platforms SDK repository on GitHub](//github.com/firebase/firebase-ios-sdk/issues). \n\nMy app prompts the user for their password to access Keychain items on macOS. How do I fix this?\n\nUpgrade your Firebase dependency to version 9.6.0 or higher and add the\n\\[Keychain Sharing capability\\](/docs/ios/troubleshooting-faq#macos-keychain-sharing)\nto your target. \n\nWhy does Firebase require the Keychain Sharing capability on macOS?\n\nFirebase SDKs use keychain to store information like the Firebase\ninstallation ID used for FCM. Without Keychain access, Firebase SDKs may not\nfunction correctly. The macOS keychain behaves differently than the iOS-style\nkeychain that is used on other platforms (iOS, tvOS, macCatalyst,\nand watchOS).\n\nOn macOS, apps use a shared keychain that may be modified by other apps and\nprocesses. Unlike iOS, there is no sandboxed keychain that the app has\nimplicit access to. So, when a Mac app interacts with the keychain, the system\nprompts the user for access since the Mac app may be modifying a keychain item\nthat it did not create. To address this discrepancy, Firebase queries the\nkeychain with the `kSecUseDataProtectionKeychain` key, which tells\nthe app to query a keychain item that is part of a keychain access group\n(this is default behavior on other platforms). The Keychain Sharing capability\nis required because the app needs it to synthesize an access group that can be\nshared amongst its targets, thus giving permission for the app to freely\naccess keychain items in the access group.\n\nFor more information, see Apple's\n[Keychain documentation](https://developer.apple.com/documentation/security/keychain_services/keychains). \n\nIn Xcode versions 13 and later, why can my UIKit apps not open some\nURLs I've registered\nin my Info.plist?\n\nApple introduced a limit of 50 `LSApplicationQueriesSchemes`\nentries in `Info.plist` files. In 2015, Apple introduced\n`LSApplicationQueriesSchemes` to limit the number of URL queries\neach app could make. With the release of Xcode 13, these limits are enforced,\nwhile in Xcode 12 and earlier there was no effective limit to the number of\nschemes.\n\nSome Firebase products, like Firebase Authentication and Firebase Dynamic Links,\nrequire the use of custom URL schemes to redirect to your application. These\nURLs conform to a concise and consistent URL scheme that should not count\nsignificantly against the 50 link scheme limit.\n\nNote that for apps that continue to register more than 50\n`LSApplicationQueriesSchemes`, some schemes will\nbe silently ignored. The app may be unable to execute certain deeplinks,\ndepending on the order in which they are added."]]