Swift Package Manager para desarrolladores de aplicaciones
Cómo usar Swift Package Manager para dependencias nativas de iOS o macOS
Cómo activar Swift Package Manager
#A partir de la versión 3.44, el soporte de Swift Package Manager (SwiftPM) de Flutter está activado por defecto. Actualizar Flutter y ejecutar tu aplicación agrega automáticamente la integración de SwiftPM. Esto hace que tu proyecto descargue los paquetes Swift de los que dependen tus plugins de Flutter. Para usar una versión anterior de Flutter, es posible que necesites eliminar la integración de Swift Package Manager de la aplicación.
Ten en cuenta que Flutter recurre a CocoaPods para las dependencias que aún no soportan Swift Package Manager.
[Opcional] Para comprobar si tu proyecto está utilizando SwiftPM:
En Xcode, ejecuta la aplicación.
-
Asegúrate de que Run Prepare Flutter Framework Script se ejecute como una preacción y de que
FlutterGeneratedPluginSwiftPackagesea una dependencia de destino.
Asegúrate de que Run Prepare Flutter Framework Script se ejecute como una preacción
Si deshabilitaste anteriormente SwiftPM, es posible que debas habilitarlo con
flutter config --enable-swift-package-manager.
Si la migración automática funciona para ti, ¡eso es todo! Has terminado con esta página.
Cómo agregar la integración de Swift Package Manager manualmente
#Cuando actualizas a Flutter 3.44 o posterior y ejecutas tu aplicación, la integración de SwiftPM se agrega automáticamente. Solo necesitas estas instrucciones si ocurrieron problemas y necesitas agregar manualmente la integración de SwiftPM a tu proyecto.
La mayoría de los desarrolladores no necesitan hacer esto.
Si experimentas un problema al migrar automáticamente tu proyecto a SwiftPM, por favor crea un reporte de problema (issue). Incluye el mensaje de error y, si es posible, incluye una copia de los siguientes archivos en tu reporte:
ios/Runner.xcodeproj/project.pbxprojios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme(o el xcscheme para el flavor utilizado)
La migración a SwiftPM requiere actualizar los archivos
ios/Runner.xcodeproj/project.pbxproj y
ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme.
Paso 1: Agregar la dependencia del paquete FlutterGeneratedPluginSwiftPackage
#En Xcode, abre
ios/Runner.xcworkspace.-
Navega a Package Dependencies para el proyecto.

Las dependencias de paquetes del proyecto
-
Haz clic en el botón add.
En el diálogo que se abre, haz clic en Add Local....
-
Navega a
ios/Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackagey haz clic en Add Package. -
Asegúrate de que esté agregado al target
Runnery haz clic en Add Package.
Asegúrate de que el paquete esté agregado al target
Runner -
Asegúrate de que
FlutterGeneratedPluginSwiftPackagese haya agregado a Frameworks, Libraries, and Embedded Content.
Asegúrate de que
FlutterGeneratedPluginSwiftPackagese haya agregado a Frameworks, Libraries, and Embedded Content
Paso 2: Agregar la preacción de script de ejecución Run Prepare Flutter Framework Script
#Los siguientes pasos deben completarse para cada flavor.
Ve a Product > Scheme > Edit Scheme.
Expande la sección Build en la barra lateral izquierda.
Haz clic en Pre-actions.
-
Haz clic en el botón add y selecciona New Run Script Action del menú.
-
Haz clic en el título Run Script y cámbialo a:
Run Prepare Flutter Framework Script Cambia Provide build settings from a la aplicación
Runner.-
Escribe lo siguiente en el cuadro de texto:
sh"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" prepare
Agregar la preacción de compilación Run Prepare Flutter Framework Script
Paso 3: Ejecutar la aplicación
#En Xcode, ejecuta la aplicación.
-
Asegúrate de que Run Prepare Flutter Framework Script se ejecute como una preacción y de que
FlutterGeneratedPluginSwiftPackagesea una dependencia de destino.
Asegúrate de que Run Prepare Flutter Framework Script se ejecute como una preacción
Asegúrate de que la aplicación se ejecute en la línea de comandos con
flutter run.
La migración a SwiftPM requiere actualizar los archivos
macos/Runner.xcodeproj/project.pbxproj y
macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme.
Paso 1: Agregar la dependencia del paquete FlutterGeneratedPluginSwiftPackage
#En Xcode, abre
macos/Runner.xcworkspace.-
Navega a Package Dependencies para el proyecto.

Las dependencias de paquetes del proyecto
-
Haz clic en el botón add.
En el diálogo que se abre, haz clic en Add Local....
-
Navega a
macos/Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackagey haz clic en Add Package. -
Asegúrate de que esté agregado al Runner Target y haz clic en Add Package.

Asegúrate de que el paquete esté agregado al target
Runner -
Asegúrate de que
FlutterGeneratedPluginSwiftPackagese haya agregado a Frameworks, Libraries, and Embedded Content.
Asegúrate de que
FlutterGeneratedPluginSwiftPackagese haya agregado a Frameworks, Libraries, and Embedded Content
Paso 2: Agregar la preacción de script de ejecución Run Prepare Flutter Framework Script
#Los siguientes pasos deben completarse para cada flavor.
Ve a Product > Scheme > Edit Scheme.
Expande la sección Build en la barra lateral izquierda.
Haz clic en Pre-actions.
-
Haz clic en el botón add y selecciona New Run Script Action del menú.
-
Haz clic en el título Run Script y cámbialo a:
Run Prepare Flutter Framework Script Cambia Provide build settings from al target
Runner.-
Escribe lo siguiente en el cuadro de texto:
sh"$FLUTTER_ROOT"/packages/flutter_tools/bin/macos_assemble.sh prepare
Agregar la preacción de compilación Run Prepare Flutter Framework Script
Paso 3: Ejecutar la aplicación
#En Xcode, ejecuta la aplicación.
-
Asegúrate de que Run Prepare Flutter Framework Script se ejecute como una preacción y de que
FlutterGeneratedPluginSwiftPackagesea una dependencia de destino.
Asegúrate de que
Run Prepare Flutter Framework Scriptse ejecute como una preacción Asegúrate de que la aplicación se ejecute en la línea de comandos con
flutter run.
Agregar a una aplicación existente (add-to-app)
#Para usar SwiftPM, consulta una de las siguientes páginas, según corresponda:
- Integrar una aplicación de Flutter en tu proyecto de iOS
- Integrar una aplicación de Flutter en tu proyecto de macOS
Agregar a un target de Xcode personalizado
#Tu proyecto de Xcode de Flutter puede tener targets de Xcode personalizados para compilar productos adicionales, como frameworks o pruebas unitarias. Puedes agregar la integración de Swift Package Manager a estos targets de Xcode personalizados.
Sigue los pasos en Cómo agregar la integración de Swift Package Manager.
En el Paso 1 para el elemento de la lista 6,
usa tu target personalizado en lugar del target Flutter.
En el Paso 2 para el elemento de la lista 6,
usa tu target personalizado en lugar del target Flutter.
Cómo eliminar la integración de Swift Package Manager
#Cuando se modifica tu aplicación para soportar SwiftPM, el proyecto de Xcode se actualiza para agregar las dependencias de plugins de Flutter.
Para deshacer esta migración:
-
Limpia tu proyecto:
shflutter clean -
Abre tu aplicación (
ios/Runner.xcworkspaceomacos/Runner.xcworkspace) en Xcode. Navega a Package Dependencies para el proyecto.
-
Haz clic en el paquete
FlutterGeneratedPluginSwiftPackage, luego haz clic en el botón remove.
El
FlutterGeneratedPluginSwiftPackagea eliminar -
Navega a Frameworks, Libraries, and Embedded Content para el target
Runner. -
Haz clic en
FlutterGeneratedPluginSwiftPackage, luego haz clic en el botón remove.
El
FlutterGeneratedPluginSwiftPackagea eliminar Ve a Product > Scheme > Edit Scheme.
Expande la sección Build en la barra lateral izquierda.
Haz clic en Pre-actions.
Expande Run Prepare Flutter Framework Script.
-
Haz clic en el botón delete.

La preacción de compilación a eliminar
Cómo usar un plugin de Flutter de Swift Package Manager que requiere una versión de OS superior
#Si un plugin de Flutter de Swift Package Manager requiere una versión de OS superior a la del proyecto, es posible que obtengas un error como este:
Target Integrity (Xcode): The package product 'plugin_name_ios' requires minimum platform version 14.0 for the iOS platform, but this target supports 12.0
Para usar el plugin:
-
Abre tu aplicación (
ios/Runner.xcworkspaceomacos/Runner.xcworkspace) en Xcode. -
Aumenta el Minimum Deployments del target de tu aplicación.

La configuración de Minimum Deployments del target
-
Si actualizaste el Minimum Deployments de tu aplicación de iOS, regenera los archivos de configuración del proyecto de iOS:
shflutter build ios --config-only -
Si actualizaste el Minimum Deployments de tu aplicación de macOS, regenera los archivos de configuración del proyecto de macOS:
shflutter build macos --config-only
Cómo desactivar Swift Package Manager
#En general, no hagas esto. Recuerda que el registro de CocoaPods pasará a ser de solo lectura el 2 de diciembre de 2026 y desactivar SwiftPM no estará permitido en el futuro.
Desactivar Swift Package Manager hace que Flutter use CocoaPods para todas las dependencias. Sin embargo, SwiftPM permanece integrado con tu proyecto. Para eliminar la integración de Swift Package Manager por completo de tu proyecto, sigue las instrucciones de Cómo eliminar la integración de Swift Package Manager.
Desactivar SwiftPM para un solo proyecto
#En el archivo pubspec.yaml del proyecto, en la sección flutter,
establece enable-swift-package-manager en false en la subsección config.
# The following section is specific to Flutter packages.
flutter:
config:
enable-swift-package-manager: false
Esto desactiva Swift Package Manager para todos los colaboradores de este proyecto.
Desactivar SwiftPM globalmente para todos los proyectos
#Ejecuta el siguiente comando:
flutter config --no-enable-swift-package-manager
Esto desactiva Swift Package Manager para el usuario actual.
Si un proyecto es incompatible con Swift Package Manager, todos los colaboradores deben ejecutar este comando.
A menos que se indique lo contrario, la documentación de este sitio refleja Flutter 3.44.0. Página actualizada por última vez el 2026-06-08. Ver código fuente oreportar un problema.