¿Cómo agregar un archivo al archivo xcode pbxproj?

Quiero mantener un proyecto de xcode sincronizado con un proyecto de Visual Studio. ¿Cómo puedo lograr esto?

Por cierto, ¿cómo gestiona xcode la referencia de archivos? No hay información de ruta en el archivo pbxproj, solo un "número mágico" con cada referencia de archivo.

preguntado el 12 de junio de 12 a las 16:06

3 Respuestas

Para su primera pregunta, sospecho que la única forma razonable es usar una herramienta de compilación multiplataforma como make o ANT con inclusiones separadas para cada objetivo. Esto podría administrarse más fácilmente si luego envuelve estos archivos MAKE con las herramientas nativas de cada plataforma, Xcode y VS.

Su segunda pregunta es desconcertante, ya que el archivo pbxproj tiene rutas explícitas para cada archivo, así como conjuntos de rutas de búsqueda, vea el ejemplo a continuación.

492991C11534DE51003993BA /* KeyboardButton.m */ = {isa = PBXFileReference; codificación de archivo = 4; lastKnownFileType = sourcecode.c.objc; nombre = BotónTeclado.m; ruta = GUI/iPad/Sesión/Teclado/KeyboardButton.m; arbolfuente = ""; };

Respondido el 22 de junio de 12 a las 21:06

Agregar archivos a XCode Projects es bastante extraño. No he descubierto, por ejemplo, cómo XCode calcula sus valores hash para el diccionario de objetos.

Pero después de algunos análisis, escribí una pequeña herramienta para agregar archivos a un proyecto de xcode. Simplemente se adapta a mis necesidades, pero se puede ampliar. No dude en ponerse en contacto conmigo a través de github si tiene necesidades extendidas para agregar archivos, como para agregue una regla de compilación solo para un objetivo seleccionado, que aún no había implementado, ya que asumo que esta característica no es necesaria en >99% de los proyectos.

La XCodeControl Project es un proyecto XCode de macos en sí mismo, ya que es más fácil de leer y modificar los archivos .pbxproj, que son serializaciones simples de un NSDictionary Objeto. Por supuesto, Apple ha agregado algo de sal a su serialización, por lo que la salida de XCodeControl se ve bastante diferente a lo que produce Apple, pero aún así simplemente funciona.

Respondido el 20 de junio de 15 a las 09:06

formato de archivo .pbxproj

Si te interesa .pbxproj formato de archivo, puede consultar este http://www.monobjc.net/xcode-project-file-format.html

El código hash es generado por UUID.

Puedes revisar esta pregunta hash project.pbxproj para archivos: ¿qué hash se usa y cómo?

¿Cómo cambiar pbxproj?

1. CocoaPods de Ruby:

Hay una API de Ruby de Cocoapods para editar proyectos de Xcode. https://github.com/CocoaPods/Xcodeproj

2. Herramientas de Python pbxproj:

Si desea agregar archivos a .pbxproj manual, puedes probar la herramienta python pbxproj

Instalar por: sudo pip install pbxproj

Mas información en https://github.com/kronenthaler/mod-pbxproj/wiki/CLI

Diviértete ~

Respondido 26 Oct 21, 04:10

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.