Cambios en el código de firma de Xcode 4

Actualización 21 de junio 2011: Alparecer, el proceso no es tan sencillo como lo presenta, sobre todo si se utiliza identificadores únicos de la aplicación para su aplicación. Por favor, tenga en cuenta la sección de actualización a continuación.

Con Xcode 4, Apple mejoró las obras de firma de código de forma para la distribución de versiones de sus aplicaciones iOS. Lamentablemente, sin embargo, Apple no ha actualizado aún la documentación en el Portal de IOS de aprovisionamiento , que todavía se centra en Xcode 3. Hace poco me enteré de los cambios por accidente, cuando me topé con una nota técnica titulada Entender y resolver problemas firma de código .

Utilice el mismo proceso de construcción de Especial y construye la App Store

En el pasado, el proceso de preparación de una compilación de Ad Hoc de distribución varió ligeramente de los pasos necesarios para hacer una construcción de la App Store. Además de requerir perfiles de datos diferentes, un Grupo Especial construyen requiere crear un Entitlements.plist archivo, desactive la casilla get-task-allow la opción e incluir este archivo en su configuración de generación. Esta diferencia por lo general significa que usted podría crear diferentes configuraciones para construir ad hoc y una para la distribución de App Store en Xcode. También significaba que tenía que crear una nueva versión de su aplicación cuando estaba listo para la App Store en lugar de utilizar la última especial de generación que había sido probado con éxito por nuestros probadores de la beta 1 .

Con Xcode 4, esto ya no es necesario. Mientras que usted todavía tiene que firmar su aplicación con perfiles diferentes para el aprovisionamiento y la distribución especial de la App Store, la firma de código se puede aplazar hasta después de la construcción y el archivo 2 . Ad Hoc se basa ya no requieren código especial de firma Derechos para que pueda utilizar una única configuración de generación para todas sus versiones de lanzamiento.

Guía paso a paso a la firma de código con Xcode 4

  1. Utilice el IOS de aprovisionamiento Portal para generar y descargar los perfiles de distribución de aprovisionamiento. Haga doble clic en los perfiles descargados para instalarlos en Xcode. Nada ha cambiado aquí.
  2. Si ya ha creado una Entitlements.plist archivo para la distribución ad hoc, se puede eliminar. También quite el nombre del archivo de configuración de construir si usted lo ha aparece en la sección Derechos firma de código “. Omita este paso si usted requiere un archivo de derechos para otros fines que la firma de código. En este caso, basta con retirar la get-task-allow la opción de la lista de propiedades.
  3. Si ha creado diferentes configuraciones para construir ad hoc y se basa App Store, también puede eliminarlos (a menos que usted está usando algún encargo construir la configuración para personalizar estas configuraciones de otra manera que la firma de código). El valor por defecto “Release” configuración de generación es suficiente.
  4. La “firma de código de identidad” ajuste en la configuración de tu objetivo de compilación se puede ajustar a su perfil de desarrollo por defecto de aprovisionamiento (“iPhone Developer”), tanto para la depuración y la configuración de lanzamiento. La firma de código real de la distribución se hará por separado después de la construcción.

    La firma de código Configuración de generación en Xcode 4

    Usted puede utilizar el desarrollo de su perfil por defecto de aprovisionamiento para firmar todas las versiones inicialmente. La firma correcta para las versiones de la distribución se aplaza hasta más tarde.

    Actualización: Colin Humber, desarrollador TestFlight , me hizo consciente de un posible problema con este enfoque. Al parecer, el ID de aplicación del perfil de datos que se utiliza para la construcción de la aplicación está codificado en el binario durante el proceso de construcción. Si, posteriormente, renunciar a la aplicación con un perfil de datos que pertenece a la ID de aplicación diferentes, el uno en el binario ya no coincidirá con la identificación del perfil de datos de aplicación desde el binario no se volverá a compilar. Esto puede causar todo tipo de problemas con los servicios que dependen de la ID de aplicación, tales como el acceso a la llave, Notificaciones Push, o en App-Compras.

    Hex Editor mostrando el ID de aplicación en una aplicación binaria IOS

    El identificador de aplicación del perfil de datos que se utiliza para la construcción de la aplicación está incrustado en el binario de la aplicación.

    Este problema no le afectará a usted, siempre y cuando usted utiliza su defecto “comodín” App ID (el que se ve como 1234567890.* ). Pero si usted utiliza un ID de aplicación concreta por separado para publicar su aplicación en la App Store, usted tiene que asegurarse de que la construcción de su aplicación con un perfil de datos que utiliza el identificador de aplicación misma. Usted no debe usar su equipo por defecto de aprovisionamiento perfil de las versiones de lanzamiento en ese caso. Gracias por el heads-up, Colin!

  5. Utilice el comando Archivo de construcción para crear una versión de lanzamiento de su aplicación. Abrir Organizador de Xcode y encontrar el archivo recién creado. Ahora bien, si hace clic en el botón Compartir para guardar su especial construcción, usted tiene la oportunidad de seleccionar la correcta distribución de Ad Hoc aprovisionamiento perfil. Xcode voy a renunciar a su aplicación con el perfil seleccionado. Si los probadores beta no han encontrado más problemas, usted puede presentar exactamente la misma versión a la App Store: basta con hacer clic en el botón Enviar y seleccione el perfil de la App Store de aprovisionamiento y Xcode voy a renunciar a su aplicación de nuevo.
  6. http://translate.googleusercontent.com/translate_c?langpair=auto|es&rurl=translate.google.com&u=http://oleb.net/blog/2011/06/code-signing-changes-in-xcode-4/&usg=ALkJrhhYV-XmwQQR3fX_RDldwwRIp3Im1A