Pregunta

Tengo problemas para anular la identidad de firma de código y el perfil de aprovisionamiento que se especifica en la configuración de compilación de Xcode con una que especifique a través de la línea de comando.

Actualmente estoy haciendo:

xcodebuild -target "#{XTARGET}" -sdk iphoneos#{SDK_VERSION} -configuration #{config} CODE_SIGN_IDENTITY="#{DEVELOPER}"

Si la configuración de compilación de Xcode está configurada en "no código de código", esto funciona perfectamente. Pero si está configurado en una identidad que no sea la que estoy especificando como desarrollador, falla. Tenga en cuenta que no quiero tener que abrir Xcode para producir una compilación con este script. Pero actualmente tengo que asegurarme de que la configuración de compilación diga "no firmar el código".

Creo que necesito encontrar una manera de especificar también el perfil de aprovisionamiento a través de xcodeBuild pero cuando escribo:

xcodebuild -target "#{XTARGET}" -sdk iphoneos#{SDK_VERSION} -configuration #{config} CODE_SIGN_IDENTITY="#{DEVELOPER}" PROVISIONING_PROFILE="#{PROFILE}"

El comando falla y dice que el perfil de aprovisionamiento no se puede encontrar. A pesar de que está en el lugar apropiado. He intentado especificar la ruta completa, la ruta relativa, solo el nombre de archivo. Funciona cuando especifique este perfil en el comando xcrun. Pero es un no ir con xcodeBuild.

¿Algunas ideas?

¿Fue útil?

Solución

No estoy seguro si encontró la respuesta, pero descubrí de esta manera: hay un identificador único para el perfil de aprovisionamiento local (para su máquina), que puede transmitir a la configuración de Provisioning_profile. Puede encontrar esta cadena si se abre Xcode, seleccione su signo de código en "Significación de código" (en Configuración de compilación). Después de seleccionar su valor de firma de código (asociado con su perfil de aprovisionamiento) en la ventana emergente de firma de código, si selecciona "Otro ...", mostrará algo como:

Distribución de iPhone: ABCDEFJ-1234-5678-A382-ABDEWKEKEKE

Si toma esa segunda línea ('ABCD ...') y lo pone en su comando provisioning_profile en xcode, debería funcionar. Sin embargo, supongo que si alguna vez actualiza su perfil de aprovisionamiento, necesitará asegurarse de determinar ese valor y actualizar lo que transmite a XCode.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top