2012-01-27 34 views
7

Tengo dos proyectos en un espacio de trabajo de Xcode. Me gustaría agregar el producto de compilación del proyecto B como un recurso de paquete en el proyecto A. Ya he configurado el esquema del proyecto A para construir primero el proyecto B. ¿Hay una forma adecuada de hacerlo además de simplemente agregar el producto de compilación del proyecto B del sistema de archivos?¿Puede agregar un producto de compilación desde un proyecto diferente como recurso de paquete en XCode?

Respuesta

4

Pude agregar el producto del proyecto B al proyecto A de la siguiente manera. Simplemente arrastré el producto del proyecto B desde Project Navigator al panel Copy Bundle Resources del proyecto A. Puede ser complicado ya que no puede iniciar el arrastre seleccionando el ícono del producto; lo logré solo arrastrando su título. No fue necesario hacer del proyecto B una dependencia del objetivo A; la dependencia de compilación se puede gestionar en cambio por esquemas (que era la forma en que originalmente tenía configurado el espacio de trabajo).

+0

Me alegra que lo hayas hecho funcionar. :) –

+0

Gracias por la ayuda :) – ctpenrose

0

Puede ir a la pestaña de fases de compilación de su proyecto A y agregar el producto del proyecto B a la fase de compilación "Copiar recursos del paquete". Asegúrese de agregar una dependencia para el proyecto B.

+1

Unforuntately el producto del proyecto B no aparece como una opción como dependencia de destino (no es un objetivo del proyecto a, simplemente comparte un espacio de trabajo) ni está disponible para ser agregado como un recurso de paquete. Gracias, sin embargo ... tratando de averiguar si un producto de un proyecto diferente se puede agregar como un recurso de paquete. – ctpenrose

+0

Si arrastra el proyecto B en el proyecto A, puede seleccionar los objetivos del proyecto B como dependencias y recursos. –

+0

Eso me acerca un paso más, gracias. Eso me permite agregar el proyecto B como una dependencia de destino. Desafortunadamente, el producto del proyecto B aún no aparece como una opción cuando trato de agregar un recurso de paquete al proyecto A. – ctpenrose

3

La misma pregunta se responde un tanto aquí: https://stackoverflow.com/a/7118177/470225. No es una solución perfecta, pero está funcionando para mí. Puede agregar una fase de compilación 'Ejecutar script' para copiar el paquete de recursos en el binario de la aplicación. Aquí está la secuencia de comandos:

cp -R -f $BUILT_PRODUCTS_DIR/MyBundle.bundle $BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/ 
0

Si fuese cp -R -L -f $BUILT_PRODUCTS_DIR/MyBundle.bundle $BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/ con -L, sin esto, durante el Archivo único vínculo simbólico se copia en ruta de la carpeta de contenido y la aplicación se bloquea robaba no ven los recursos reales.

Cuestiones relacionadas