2012-05-17 18 views
6

Mi compañía trabaja con varias otras compañías para manejar sus necesidades de desarrollo de iPhone, y en muchos casos las otras compañías ya tienen algunas aplicaciones existentes en la App Store.¿Qué sucede si hay alguna situación de "error permanente" en el proceso de firma del código del certificado de la tienda de aplicaciones o el par de claves?

Nos encargamos del envío de la App Store también para ellos y en las situaciones en las que ya tienen una aplicación existente, su cuenta de iOS Dev Center ya tiene un certificado de distribución creado. En ese caso, debemos adquirir el par de claves que se generó cuando ellos (o el desarrollador externo que contrataron) crearon el certificado. He comprendido todo este tiempo que este es el proceso necesario para trabajar con la App Store.

Pero a medida que pasa el tiempo, me pregunto acerca de varias cosas

  1. ¿Qué pasa cuando los certificados caducan? Sé que creamos otros nuevos, pero eso significa que las aplicaciones en la tienda de aplicaciones están firmadas con un certificado/par de llaves diferente al que se crearon. ¿Eso es significativo? ¿O puedo actualizar las aplicaciones existentes en App Store incluso con un nuevo certificado/par de llaves (desde la misma cuenta de iOS Dev Center)

  2. ¿Qué sucede si se pierde el par de claves de un certificado existente? Digamos que la compañía hizo una aplicación antes, pero el Macintosh que usaron anteriormente fue alcanzado por un meteorito. Y no hay copias de seguridad, por supuesto. Tendría que revocar y volver a crear el certificado. ¿Eso significaría algo para la aplicación publicada existente? Si tuviera el código fuente de esa aplicación y tuviera que publicar una actualización, ¿podría hacerlo?

Básicamente estoy preguntando: ¿Hay alguna escenarios de "meter la pata" permanentemente involucrados con los certificados de desarrollo y distribución de iOS que le impida de ser capaz de actualizar las aplicaciones existentes? Sé que si no realizas una copia de seguridad del almacén de claves en el desarrollo de Android, entonces no tienes más remedio que publicar actualizaciones, pero ¿hay alguna manera de arruinar completamente el desarrollo de iOS?

Y una pregunta adicional: si puedo revocar certificados de desarrollo y volver a emitirlos sin consecuencias, ¿siempre ha funcionado de esta manera? ¿O han modificado el proceso? Puedo ver dónde la "cadena de evidencia" siempre podría estar vinculada a la cuenta del Agente de centro de desarrollo de iOS y esa sería la raíz de las cosas, pero ¿es esto algo nuevo?

+1

Es una buena pregunta, esencialmente NO HAY problemas permanentes posibles. Con android, creo (a menos que haya cambiado) puedes perder esa "clave importante" y estás jodido; no hay tal analogía con la escena iOS, afortunadamente. Simplemente, crea nuevas llaves. – Fattie

Respuesta

7

Un certificado de distribución se usa solo para enviarlo a iTunes Connect (y material Ad Hoc). Una vez aprobado, Apple firma la aplicación con un certificado diferente que no expira antes de colocar la aplicación en la tienda de aplicaciones, por lo que el estado del certificado de Distribución del desarrollador ya no importa.

Una aplicación descargada o comprada seguirá ejecutándose en el dispositivo de un cliente, incluso si los certificados del desarrollador y la inscripción en iOS caducan. Pero un desarrollador tiene que volver a inscribirse ($ 99/año) a tiempo si desea que su aplicación permanezca visible en la tienda de aplicaciones.

Normalmente, los certificados de distribución caducan anualmente, tal vez un poco más a menudo, se pueden crear nuevos y las actualizaciones de las aplicaciones existentes solo se pueden enviar con el certificado de distribución más reciente (y válido).

Si pierde un par de llaves, el líder del equipo tendrá que revocar y generar nuevos certificados y provisiones, y actualizar todos sus Llaveros y el aprovisionamiento de Xcode y posiblemente las configuraciones del proyecto/objetivo también. La confusión acerca de qué certificados y disposiciones son en vivo y cuáles están muertos ha causado algunos problemas graves a algunos desarrolladores.

Cuestiones relacionadas