На этой странице приведены советы по устранению неполадок, связанных с платформами Apple, которые могут возникнуть при использовании Firebase.
У вас возникли другие проблемы или вы не нашли свою в списке ниже? Ознакомьтесь с основными часто задаваемыми вопросами о Firebase, а также с часто задаваемыми вопросами о конкретных продуктах.
Актуальный список известных проблем и способы их устранения можно найти в репозитории GitHub Firebase SDK для платформ Apple. Мы рекомендуем сообщать о проблемах с Firebase SDK для платформ Apple именно там.
Какие версии Xcode поддерживает Firebase?
Firebase поддерживает до двух основных версий Xcode, не считая тех, которые больше не поддерживаются Apple. Например, с марта 2019 года Apple требует, чтобы все приложения поддерживали хотя бы iOS 12, а это значит, что поддержка Xcode 9 была прекращена и единственной поддерживаемой основной версией стала Xcode 10.
Изменения в поддержке определенных дополнительных или исправленных версий Xcode (например, с 9.2.0 до 9.4.1) определяются на основе потребностей SDK Firebase для платформ Apple и опроса разработчиков. Эти изменения отражены в примечаниях к выпуску Firebase SDK для платформ Apple и на странице настройки Firebase SDK для платформ Apple.
Чтобы узнать, какая минимальная версия Xcode поддерживается SDK, ознакомьтесь с требованиями, указанными в статье Как добавить Firebase в проект для Apple.
Поддержка бета-версий Xcode в Firebase предоставляется в максимально возможной степени. Разработчики могут отслеживать и отправлять проблемы в репозитории Firebase Apple platforms SDK на GitHub.
Мое приложение запрашивает у пользователя пароль для доступа к элементам Связки ключей в macOS. Как это исправить?
Обновите зависимость Firebase до версии 9.6.0 или более поздней и добавьте в целевой объект [возможность доступа к цепочке ключей](/docs/ios/troubleshooting-faq#macos-keychain-sharing).
Почему Firebase требует возможности общего доступа к Связке ключей в macOS?
Firebase SDK используют цепочку ключей для хранения информации, например идентификатора установки Firebase, который используется для FCM. Без доступа к Keychain пакеты SDK Firebase могут работать некорректно. Связка ключей macOS работает иначе, чем связка ключей в стиле iOS, которая используется на других платформах (iOS, tvOS, macCatalyst и watchOS).
В macOS приложения используют общую связку ключей, которую могут изменять другие приложения и процессы. В отличие от iOS, в Android нет изолированной связки ключей, к которой приложение имеет неявный доступ. Поэтому, когда приложение для macOS взаимодействует с цепочкой ключей, система запрашивает у пользователя разрешение на доступ, поскольку приложение может изменять объект цепочки ключей, который оно не создавало. Чтобы устранить это несоответствие, Firebase запрашивает цепочку ключей с помощью ключа kSecUseDataProtectionKeychain, который указывает приложению запросить элемент цепочки ключей, входящий в группу доступа к цепочке ключей (это поведение по умолчанию на других платформах). Функция "Общий доступ к цепочке ключей" необходима, чтобы приложение могло создать группу доступа, которой можно поделиться с его целями. Это позволит приложению свободно получать доступ к элементам цепочки ключей в группе доступа.
Подробнее
о цепочке ключей
…
Почему в Xcode 13 и более поздних версий мои приложения UIKit не могут открыть некоторые URL, которые я зарегистрировал
в файле Info.plist?
Apple ввела ограничение на количество записей LSApplicationQueriesSchemes в файлах Info.plist – не более 50. В 2015 году компания Apple представила LSApplicationQueriesSchemes, чтобы ограничить количество запросов URL, которые может отправлять каждое приложение. В Xcode 13 и более поздних версиях эти ограничения действуют, а в Xcode 12 и более ранних версиях количество схем не было ограничено.
Некоторые продукты Firebase, например Firebase Authentication и Firebase Dynamic Links, требуют использования специальных схем URL для перенаправления в ваше приложение. Эти URL соответствуют краткой и единообразной схеме URL, поэтому не должны значительно влиять на ограничение в 50 схем обмена ссылками.
Обратите внимание, что если приложение продолжает регистрировать более 50 LSApplicationQueriesSchemes, некоторые схемы будут игнорироваться. Приложение может не выполнять некоторые ссылки на контент в зависимости от порядка их добавления.
Какие уведомления об использовании ПО с открытым исходным кодом нужно добавить в приложение?
Для платформ Apple Firebase SDK распространяется по лицензии Apache 2.0.