2008-12-01 19 views
8

Trato de enviar mi primera aplicación de iPhone a Subversion. Descubrí que hay una sección de "identidad de firma de código" en mi archivo xcode project.pbxproj.iPhone Xcode project.pbxproj + Subversion = ¿problema de firma de código?

CODE_SIGN_IDENTITY = "iPhone Developer: my username here...; 
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer: above..."; 

El problema es que en nuestro equipo utilizamos diferentes aprovisionamientos que se unen a nuestro dispositivo. Entonces, cuando otros quieran ejecutar el código en el dispositivo, tienen que cambiar esta línea. Podemos compartir un suministro a través de esto, pero de esa manera tenemos varias desventajas. ¿Hay alguna otra forma de resolverlo? es decir, ¿incluye la sección de firma de código en otro archivo que no se compromete con SVN?

Respuesta

0

La opción obvia sería crear otras configuraciones de compilación.

0

¿Por qué estás "cambiando esta línea" directamente? Casi nunca debería editar directamente nada en el paquete de archivos .xcodeproj.

En su lugar, debe cambiar esto dentro de la configuración de compilación. Para ser más específico en su caso, debe agregar varias configuraciones de compilación más, una para cada miembro del equipo. Ese miembro puede construir usando su propio archivo de aprovisionamiento sin interferir con ninguna otra configuración de compilación.

1

Puede usar $(USER) en su definición de configuración de compilación para incluir su nombre de usuario corto.

Por ejemplo:

CODE_SIGN_IDENTITY = "iPhone Developer: $(USER)"; 

que utilizará el contenido de la variable USER medio ambiente en la definición de la configuración CODE_SIGN_IDENTITY acumulación.

11

Puede basar una configuración de proyecto o destino en los contenidos de un archivo xcconfig que no está registrado en Subversion o que se personaliza por desarrollador. Agregue un archivo xcconfig apropiado a su proyecto y luego elija el archivo desde la ventana emergente "Basado en" en la parte inferior de la pestaña Generar en la ventana Información del proyecto o Información de destino.

Por ejemplo, usted podría tener un archivo DeveloperSettings.xcconfig en el proyecto cuyo contenido en su sistema son:

CODE_SIGN_IDENTITY = "iPhone Developer: favoyang" 

mientras que su contenido en mi sistema son:

CODE_SIGN_IDENTITY = "iPhone Developer: cmh" 

Estos ajustes serán heredados ya sea por la configuración del proyecto o del objetivo que se establece para estar basada en este archivo.

12

Siempre que solo tenga una identidad de firma, puede usar "iPhone Developer" como su identidad de firma de código. Codesign buscará una identidad que contenga "iPhone Developer" y la usará.

+0

Creo que esto es nuevo a partir del 2.2, por lo que no todas las instrucciones lo reflejan. –

Cuestiones relacionadas