Esta página ofrece sugerencias y solución de problemas específicos de la plataforma Apple que puedes encontrar al usar Firebase.
¿Tiene otros desafíos o no ve su problema descrito a continuación? Asegúrese de consultar las preguntas frecuentes principales de Firebase para obtener más preguntas frecuentes sobre Firebase o específicas del producto.
También puede consultar el repositorio GitHub del SDK de las plataformas Firebase Apple para obtener una lista actualizada de problemas reportados y solución de problemas. ¡Le recomendamos que presente allí también sus propios problemas relacionados con el SDK de las plataformas Firebase Apple!
¿Qué versiones de Xcode admite Firebase?
Firebase admite hasta dos versiones principales de Xcode, sin incluir las versiones de Xcode que Apple ya no admite. Por ejemplo, a partir de marzo de 2019, Apple requirió al menos iOS 12 en todas las aplicaciones, lo que significa que se eliminó la compatibilidad con Xcode 9 y Xcode 10 fue la única versión principal compatible.
Los cambios en la compatibilidad con versiones menores o de parche específicas de Xcode (por ejemplo, 9.2.0 a 9.4.1) se determinan en función de las necesidades del SDK de las plataformas Firebase Apple y una encuesta del uso de los desarrolladores. Estos cambios se reflejan en las notas de la versión del SDK de las plataformas Firebase Apple y en la página de configuración del SDK de las plataformas Firebase Apple .
Para ver la versión mínima de Xcode admitida por el SDK, consulte los requisitos enumerados en Agregar Firebase a su proyecto de Apple .
El soporte de Firebase para las versiones Beta de Xcode está disponible según el "mejor esfuerzo". Los desarrolladores pueden rastrear y enviar problemas en el repositorio SDK de las plataformas Firebase Apple en GitHub .
Mi aplicación solicita al usuario su contraseña para acceder a los elementos del Llavero en macOS. ¿Cómo puedo solucionar esto?
Actualice su dependencia de Firebase a la versión 9.6.0 o superior y agregue la [capacidad para compartir llaveros](/docs/ios/troubleshooting-faq#macos-keychain-sharing) a su objetivo.
¿Por qué Firebase requiere la capacidad de compartir llaveros en macOS?
Los SDK de Firebase usan un llavero para almacenar información como el ID de instalación de Firebase usado para FCM. Sin acceso al llavero, es posible que los SDK de Firebase no funcionen correctamente. El llavero de macOS se comporta de manera diferente al llavero estilo iOS que se usa en otras plataformas (iOS, tvOS, macCatalyst y watchOS).
En macOS, las aplicaciones usan un llavero compartido que puede ser modificado por otras aplicaciones y procesos. A diferencia de iOS, no existe un llavero aislado al que la aplicación tenga acceso implícito. Entonces, cuando una aplicación de Mac interactúa con el llavero, el sistema solicita acceso al usuario, ya que la aplicación de Mac puede estar modificando un elemento del llavero que no creó. Para solucionar esta discrepancia, Firebase consulta el llavero con la clave kSecUseDataProtectionKeychain
, que le indica a la aplicación que consulte un elemento del llavero que forma parte de un grupo de acceso al llavero (este es el comportamiento predeterminado en otras plataformas). La capacidad para compartir llaveros es necesaria porque la aplicación la necesita para sintetizar un grupo de acceso que se puede compartir entre sus objetivos, otorgando así permiso a la aplicación para acceder libremente a los elementos del llavero en el grupo de acceso.
Para obtener más información, consulte la documentación de llaveros de Apple.
En las versiones 13 y posteriores de Xcode, ¿por qué mis aplicaciones UIKit no pueden abrir algunas URL que registré?
en mi lista de información?
Apple introdujo un límite de 50 entradas LSApplicationQueriesSchemes
en archivos Info.plist
. En 2015, Apple introdujo LSApplicationQueriesSchemes
para limitar la cantidad de consultas de URL que podía realizar cada aplicación. Con el lanzamiento de Xcode 13, estos límites se aplican, mientras que en Xcode 12 y versiones anteriores no había un límite efectivo para la cantidad de esquemas.
Algunos productos de Firebase, como Firebase Authentication y Firebase Dynamic Links, requieren el uso de esquemas de URL personalizados para redirigir a su aplicación. Estas URL se ajustan a un esquema de URL conciso y coherente que no debería contar de manera significativa en el límite del esquema de 50 enlaces.
Tenga en cuenta que para las aplicaciones que continúan registrando más de 50 LSApplicationQueriesSchemes
, algunos esquemas se ignorarán silenciosamente. Es posible que la aplicación no pueda ejecutar ciertos enlaces profundos, según el orden en que se agreguen.