ser program development developer desarrollador cuenta como apple app ios xcode macos entitlements

program - desarrollador de ios



cómo llamar a package-productPackagingUtility en la línea de comandos (3)

Me gustaría firmar mi carpeta de aplicaciones al final de la compilación, no durante la compilación de Xcode.

Las versiones recientes de Xcode de Xcode se quejan si deshabilita la firma de código para una compilación de dispositivo.

La forma más fácil de evitar esto es dejar que Xcode lo firme y luego lo vuelva a firmar más tarde. Los pasos son aproximadamente

  1. Vuelque los derechos originales con codesign -d --entitlements=MyApp.xcent MyApp.app
  2. Si está cambiando los perfiles de aprovisionamiento, copie el nuevo en MyApp.app/embedded.mobileprovision y modifique los derechos en consecuencia (IIRC el formato del archivo tiene una magia de 4 bytes y una longitud de 4 bytes; recuerde actualizar la longitud) .
  3. Vuelva a firmar con su certificado deseado.

Cuando especifica un derecho y una identidad de firma de código en la configuración de compilación (Xcode 4.2.1), tiene la siguiente salida cuando compila desde Xcode:

ProcessProductPackaging "myAppName.entitlements" "/path/to/myAppName.xcent" cd /path/to/myAppName/SourceCode builtin-productPackagingUtility "/path/to/myAppName/SourceCode/myAppName.entitlements" -entitlements -format xml -o "/path/to/myAppName.xcent" CodeSign "/path/to/Garfields Comic Boom 1.0.app" cd /path/to/myAppName/SourceCode setenv CODESIGN_ALLOCATE /Developer/usr/bin/codesign_allocate /usr/bin/codesign --force --sign "myCertificate" --entitlements "/path/to/myAppName.xcent" "/path/to/myAppName.app"

Me gustaría firmar mi carpeta de aplicaciones al final de la compilación, y no durante la compilación de Xcode.

Mi problema es que no sé cómo generar el archivo xcent en la línea de comandos.

Pregunta: ¿Cómo se generan los archivos xcent en la línea de comandos? Hice un hallazgo desde la raíz, no hay nada llamado productPackagingUtility ...


El formato de las .entitlements y $ {APPNAME} .xcent es el mismo, por lo que solo se puede copiar.


El uso de la utilidad codesign no requiere un archivo xcent. Simplemente puede crear un archivo plist y usarlo para los derechos. Asegúrate de que sea un plist XML, no binario.