Instala Firebase con Swift Package Manager

A partir de la versión 8.0.0 del SDK de Firebase para plataformas de Apple, la compatibilidad con Swift Package Manager de Firebase dejó de estar en etapa beta y ahora se encuentra en fase de disponibilidad general para su uso. Los usuarios de Swift Package Manager no requieren CocoaPods.

Mediante Xcode

La compatibilidad con Swift Package Manager requiere una versión de Xcode 12.5 o una posterior.

  1. Si migras desde un proyecto basado en CocoaPods, ejecuta pod deintegrate para quitar CocoaPods de tu proyecto de Xcode. El archivo .xcworkspace generado por CocoaPods se puede borrar después de forma segura. Si agregas Firebase a un proyecto por primera vez, puedes ignorar este paso.

  2. En Xcode, instala las bibliotecas de Firebase. Para ello, navega a File (Archivo) > Swift Packages (Paquetes Swift) > Add Package Dependency (Agregar dependencia de paquete)…

  3. En el mensaje que aparece, selecciona el siguiente repositorio de Firebase en GitHub:

    https://github.com/firebase/firebase-ios-sdk.git
    
  4. Selecciona la versión de Firebase que quieres usar. Para los proyectos nuevos, te recomendamos usar la versión más reciente de Firebase.

  5. Elige los productos de Firebase que quieres incluir en tu app.

Cuando termines, Xcode comenzará a resolver las dependencias de tus paquetes y las descargará en segundo plano.

Mediante Package.swift

Para integrar Firebase en un paquete Swift mediante un manifiesto Package.swift, puedes agregar Firebase al array dependencies de tu paquete. Para obtener más detalles, consulta la documentación de Swift Package Manager.

dependencies: [

  .package(name: "Firebase",
           url: "https://github.com/firebase/firebase-ios-sdk.git",
           from: "8.0"),
  // ...

],

Luego, agrégalo al array dependencies de ese destino en cualquier objetivo que dependa de un producto de Firebase.

.target(
  name: "MyTargetName",
  dependencies: [
    .product(name: "FirebaseAuth", package: "Firebase"),
    // ...
  ]
),

Consideraciones específicas del producto

Algunos productos de Firebase requieren pasos de integración adicionales para funcionar correctamente.

Google Analytics

Google Analytics requiere que agregues la marca del vinculador -ObjC a la configuración de la compilación del destino.

Crashlytics

Crashlytics requiere que subas símbolos de depuración.

Puedes usar una secuencia de comandos de ejecución para Xcode a fin de subir automáticamente símbolos de depuración después de la compilación. Busca la secuencia de comandos de ejecución aquí:

${BUILD_DIR%Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run

Como alternativa para subir símbolos, puedes usar la secuencia de comandos upload-symbols. Coloca la secuencia de comandos en un subdirectorio del archivo de tu proyecto (por ejemplo, scripts/upload-symbols) y, luego, asegúrate de que esta sea ejecutable:

chmod +x scripts/upload-symbols

Esta secuencia de comandos se puede usar para subir manualmente archivos dSYM. Si quieres obtener notas de uso, así como instrucciones adicionales para la secuencia de comandos, ejecuta upload-symbols sin ningún parámetro.