Apps Kit SDK logoApps Kit SDK
Documentación · Integración en iOS

2. Configuración del proyecto de Xcode — incorporación local de los xcframeworks

Aquí no hay fusión de manifiestos ni URL de repositorio: debes integrar dos frameworks binarios en el proyecto de Xcode manualmente (o mediante un script de configuración, si tu equipo dispone de uno).

2.1 Dónde colocar los frameworks

Coloca AKSKit.xcframework y AppsKit.xcframework directamente en la misma carpeta que tu .xcodeproj, es decir, al mismo nivel que Podfile y la carpeta de código fuente de tu app, no dentro de esta última ni dentro de Pods/. Esto es importante porque Xcode resuelve la referencia al framework mediante una ruta relativa simple (sin necesidad de personalizar FRAMEWORK_SEARCH_PATHS): si los mueves, la referencia del archivo de proyecto dejará de ser válida.

plaintext
YourApp/                          <- CocoaPods project root (Podfile lives here)
├── Podfile
├── AKSKit.xcframework/            <- sibling of the .xcodeproj
├── AppsKit.xcframework/           <- sibling of the .xcodeproj
├── YourApp.xcodeproj/
├── YourApp.xcworkspace/           <- open THIS, not the .xcodeproj, once Pods are installed
└── YourApp/                       <- your app target's source folder
    ├── AppDelegate.swift
    └── ...

2.2 Añádelos al target

En Xcode, selecciona el target de tu app → General → Frameworks, Libraries, and Embedded Content → añade ambos archivos .xcframework y selecciona Embed & Sign para cada uno. En concreto, esto debe generar:

  • un PBXFileReference para cada framework con sourceTree = "<group>" y un path simple (sin prefijo de carpeta)
  • ambos frameworks incluidos en Link Binary With Libraries (la fase PBXFrameworksBuildPhase)
  • ambos frameworks incluidos en una fase de compilación de copia de archivos Embed Frameworks (PBXCopyFilesBuildPhase, dstSubfolderSpec = 10) con los atributos CodeSignOnCopy + RemoveHeadersOnCopy: esto es exactamente lo que genera seleccionar "Embed & Sign" en la interfaz de Xcode

Comprueba también que LD_RUNPATH_SEARCH_PATHS incluya @executable_path/Frameworks (Xcode lo añade automáticamente cuando incrustas un framework desde la interfaz; esto permite cargar los frameworks incrustados y firmados en tiempo de ejecución).

Si usas un script en lugar de la interfaz de Xcode (por ejemplo, para un paso de configuración de CI), los tres elementos anteriores —referencia al archivo, fase de enlace y fase de incrustación— son exactamente lo que debes añadir a project.pbxproj.

2.3 Abre el workspace, no el proyecto

Una vez ejecutado pod install, abre YourApp.xcworkspace. Este workspace conecta el target de tu app con el Pods.xcodeproj generado por CocoaPods; si abres directamente el .xcodeproj, la compilación se realizará sin enlazar correctamente las dependencias de tu Podfile.