Blog

Tutorial: Certificados para App Store y TestFlight

Contenidos

Apple hace muchas cosas bien en su experiencia de desarrollo de aplicaciones, pero cuando se trata de la firma y la distribución de aplicaciones, la experiencia de los desarrolladores de Apple ha sido un lío confuso durante todo el tiempo que hemos estado trabajando en la plataforma de Apple.

En concreto, los conceptos de certificados de firma de código y perfiles de aprovisionamiento nos confundieron hace 15 años, cuando empezamos por primera vez en el ecosistema de desarrolladores de Apple y, a día de hoy, nos siguen confundiendo (a veces).

¿Qué son los certificados de firma de código y los perfiles de aprovisionamiento?

En pocas palabras, un certificado de firma de código es el mecanismo por el que un desarrollador demuestra que la aplicación que está creando ha sido generada por él como individuo (llamado certificado de desarrollador) o por una determinada organización (certificado de distribución).

Estos certificados, que se utilizan para «firmar» cualquier aplicación que se suba a los servidores de la tienda de aplicaciones de Apple, permiten a cualquier ordenador o dispositivo que descargue la aplicación verificar quién es el editor de la misma antes de ejecutarla.

Un perfil de aprovisionamiento se incluye junto con una aplicación y contiene información que vincula el identificador único de la aplicación (llamado identificador del paquete) con el certificado del individuo (certificado del desarrollador) o de la organización (certificado de distribución) que publica la aplicación.

De este modo, cuando un dispositivo iOS intenta ejecutar una aplicación descargada de la tienda de aplicaciones, consulta el perfil de aprovisionamiento para ver qué certificado ha publicado la aplicación y puede verificar que esa aplicación está firmada por el certificado incluido.

Para enviar aplicaciones a TestFlight para pruebas beta o para enviarlas a la tienda de aplicaciones para su publicación, un paso necesario es generar manualmente el certificado de distribución y el perfil de aprovisionamiento de distribución asociado que se utilizará para firmar la aplicación en el momento de la compilación y que se envía junto con ella a los servidores de Apple.

Recientemente, Apple ha automatizado un poco este proceso hasta el punto de que los desarrolladores ya no tienen que generar manualmente estos elementos a través de un ajuste de XCode llamado «Firma automática», sin embargo, hay ciertos casos en los que se requiere la creación manual y la asociación de estos elementos, como por ejemplo cuando se utilizan muchas herramientas externas de construcción CI/CD como Bitrise.

En este artículo, vamos a caminar a través de los pasos de:

  1. Crear un certificado de distribución de Apple
  2. Crear un perfil de aprovisionamiento de distribución de la tienda de aplicaciones
  3. Como paso final opcional, asociarlo con tu proyecto de aplicación XCode

Requisitos previos

– Una cuenta de desarrollador de Apple.

– Un ordenador Mac (no es necesario en general, pero este artículo se centrará específicamente en hacer esto desde un Mac).

– Un identificador de bundle ya creado y registrado en el portal de desarrolladores de Apple para la app que quieres distribuir.

– Un IDE XCode instalado en tu Mac junto con el código fuente de tu app (sólo es necesario para el último paso).

Cómo generar un certificado de distribución de Apple

1.) Cree una solicitud de firma de certificado en tu Mac

– En tu Mac, abra la aplicación “Acceso a llaveros».

– En la barra de menú, en «Acceso a Llaveros», ve a Asistente de Certificados -> Solicitar un certificado a una autoridad de certificación.

– En la primera página, bajo la dirección de correo electrónico del usuario, introduce tu dirección de correo electrónico y asegúrate de que el botón de opción «Guardado en el disco» está seleccionado, y pulsa Continuar.

– A continuación, aparecerá un cuadro de diálogo para guardar el archivo, dale un nombre a tu archivo CSR y guárdalo en una ubicación de tu disco.

En este punto, tendrás un CSR que está listo para ser subido a Apple para generar un certificado.

2.) Crear y descargar el certificado de distribución de Apple

– Inicia sesión en el portal para desarrolladores de Apple, en la barra lateral izquierda haz clic en «Certificados, IDs y Perfiles», luego haz clic en «Certificados» y en el botón «+».

– En la siguiente pantalla te preguntará qué tipo de certificado deseas generar y selecciona «Apple Distribution», luego haz clic en «Continue».

– Ahora tendrás que subir el archivo CSR que se generó al final de la última sección. Una vez seleccionado, haz clic en «Continuar».

– En este punto, Apple tomará el CSR y creará el certificado real con una extensión de archivo «cer», tu navegador te pedirá que guardes este archivo localmente.

– Una vez descargado el archivo, en Finder, haz doble clic en él y deberías abrir tu aplicación “Acceso a llaveros” y ahora verás que el certificado se ha instalado en tu ordenador. En este punto, tu máquina Mac tiene ahora tanto la parte de la clave pública como la parte de la clave privada supersecreta de tu certificado de distribución.

– Si deseas utilizar este certificado en una herramienta de CD/CI y necesitas subirlo, o necesitas compartirlo con otro desarrollador de tu equipo, haz clic con el botón derecho del ratón en el certificado y selecciona «Exportar <nombre del certificado>». Se te pedirá que crees una contraseña para asegurar el archivo, te recomendamos que lo hagas para asegurarte de que no cualquier «friki de la calle» pueda usar el certificado. Después de seleccionar la ubicación del archivo, verás un archivo .p12 generado en tu máquina. Esto es lo que necesitarás para subir a una herramienta de construcción externa o dar a tus desarrolladores asociados junto con la contraseña que has introducido.

Cómo crear un perfil de aprovisionamiento de distribución del App Store

– Una vez creado el certificado de distribución, regresa al Portal del Desarrollador de Apple y a la sección «Certificados, identificadores y perfiles».

– Haz clic en «Perfiles» en la barra de navegación de la izquierda y, a continuación, haz clic en el «+» de la zona principal.

– En la página siguiente, en Distribución, selecciona «App Store».

– En la siguiente pantalla tendrás que seleccionar en el cuadro desplegable «App ID» el identificador del paquete de tu aplicación y luego hacer clic en «Continuar».

– A continuación, tendrás que seleccionar el certificado que creaste en la sección anterior y pulsar «Continuar». Si hay varios certificados de distribución en la lista, fíjate en la fecha (ten en cuenta que el año será 1 año desde el día en que se generó el certificado) junto al nombre para ayudarte a distinguir el certificado que generaste.

– Por último, da un nombre a tu perfil de aprovisionamiento y haz clic en «Generar». Esto creará y descargará un perfil de aprovisionamiento con la extensión «mobileprovision».

En este punto, si no eres desarrollador, selecciona el archivo .p12 y el archivo .mobileprovision y dáselos a tu desarrollador (y hazle saber la contraseña del archivo .p12).

Si te sientes cómodo trabajando con XCode, puedes pasar al último paso para configurar XCode para que utilice el certificado y el perfil de aprovisionamiento cuando genere una compilación de lanzamiento/archivo para subirla a TestFlight/App Store Connect.

Cómo especificar el certificado y el perfil de aprovisionamiento en el proyecto Xcode

– Una vez descargado, localiza el archivo en el Finder y haz clic en él. Esto debería abrir XCode, pero no verás ninguna interfaz de usuario o pantalla, ya que el perfil de aprovisionamiento se instala en XCode de forma silenciosa.

– Abre el espacio de trabajo de XCode que contiene el código de tu aplicación, luego en el navegador de proyectos, haz clic en el nombre del proyecto de XCode para tu aplicación.

– En el panel de contenido de configuración que se abre, seleccione en Objetivos el nombre de tu aplicación y luego selecciona «Firma y Capacidades», y luego haz clic en «Liberar» en el submenú.

– Esto hará que aparezca el panel de Firma:

– Asegúrate de que la opción «Gestionar automáticamente la firma» no esté marcada.

– En el menú desplegable Perfil de aprovisionamiento, selecciona el nombre del perfil de aprovisionamiento que generaste en el paso anterior. Si no lo ves aquí, significa que no has hecho clic en el perfil de aprovisionamiento después de descargarlo en tu ordenador. Cierra XCode, haz clic en el perfil de aprovisionamiento y luego vuelve aquí y deberías verlo.

– Si todo está bien, deberías ver que el cuadro «Certificado de firma» que aparece debajo cambia al nombre del certificado que generamos antes en el artículo.

En este punto, la próxima vez que generes una compilación de archivo para subirla a App Store Connect, XCode utilizará el nuevo perfil de distribución y el certificado de distribución para firmar el código y subirlo a Apple.

Artículos destacados

From offline to online.

Comparte tus ideas con nosotros