Coquy
APP DJ TEAM
Cómo crear tu propio certificado para iOS de developer
¿Qué tipos de certificados hay y para que se utilizan?
Principalmente hay dos tipos de certificados, uno para el desarrollo y otro para su distribución. Para cada caso existen certificados con distintas funciones:
Todas las aplicaciones deben estar firmadas por un certificado válido antes de poder ser ejecutados en un dispositivo de Apple o publicarlos al AppStore.
Certificados SSL, permite establecer una conexión segura hacia el servidor de notificación Push de Apple (APNS), para este tipo de certificados tendremos que crear uno para cada aplicación si queremos enviar notificaciones sino, estos certificados nos los podremos ahorrar.
¿Cómo crear los certificados?
1. Una vez obtengamos la licencia, tendremos acceso al IOS Provisioning portal, desde ahí nos dirigiremos a "Certificates" >> "Development" y pulsaremos en "Request Certificate" para solicitar un nuevo certificado. Nos pedirá que subamos un archivo CSR.
Por eso iremos en "Aplicaciones" >> "Utilidades" y accederemos a "Acceso a Llaveros". Una vez ahí vamos al menú "Acceso a Llaveros" en "Asistente para Certificados" y hacemos clic a "Solicitar un certificado de una autoridad de certificación.
El par de claves pública y privada se generan al solicitar un certificado de una autoridad de certificación (CSR) si se utiliza el asistente de "Acceso a Llaveros".
Rellenamos nuestra dirección de correo y nombre, luego hacemos clic en "Guardado en el disco". Esto nos generará el archivo CSR (certSigningRequest), que deberemos subir en el IOS Provisioning portal.
Si volvemos al IOS Provisioning portal veremos que nuestro certificado se encuentra en el estado "Pending Issuance".
En cuestión de varios segundos recibiremos un correo electrónico notificándonos que un miembro del equipo ha solicitado un certificado.
A partir de ese instante nuestro estado habrá cambiado a "Issued", eso significa que ya podremos descargar nuestro certificado. Para instalarlo solo tendremos que arrastrarlo al "Acceso a Llaveros" o hacer doble clic.
El siguiente paso será añadir un dispositivo que utilizaremos para testear nuestras aplicaciones (podemos añadir hasta un total de 100 dispositivos distintos), para ello abriremos el "Organizer" (que lo encontraremos abriendo el Xcode, vamos al menú "Windows" y seleccionamos "Organizer"). En la sección "Devices" copiaremos el identificador (conocido también como token) del dispositivo, una cadena alfanumérica de 40 caracteres.
Luego nos dirigimos de nuevo al IOS Provisioning portal, en la sección "Devices" y pulsamos en "Add Devices". Introducimos el nombre como queramos nombrar al dispositivo, pegamos el identificador que hemos copiado antes y le damos a "Submit".
Una vez hemos añadido el dispositivos, a continuación crearemos un identificador de aplicación. Para ello iremos a la sección "App IDs" y pulsamos en "New App ID".
Un ID de aplicación es la combinación de una cadena de diez caracteres único llamado "Bundle Seed ID" y el tradicional identificador de paquete (CF).
En el campo "Bundle identifier" Apple nos recomienda que utilizemos el estilo invertido usado en un nombre de dominio. Por ejemplo si disponemos de un dominio llamado "midominio.com", y a nuestra aplicación la queremos llamar "miaplicacion", podemos añadir un subdominio a nuestro dominio de tal forma que pase a llamarse "miaplicacion.midominio.com". Ahora si invertimos el dominio podemos utilizar este nombre como identificador de paquete "com.midominio.miaplicacion", es una buena forma de mantener organizada y ordenada los nombres de aplicaciones, cuando tengamos muchas aplicaciones agradecereis haber seguido las recomendaciones de Apple.
Podemos también usar el carácter comodín (asterisco '*') para que un único identificador de aplicación se puede utilizar para construir e instalar varias aplicaciones.
4. Ahora podremos solicitar un perfil de aprovisionamiento, que no es más que una colección de entidades digitales que vincula desarrolladores con dispositivos permitiendo a un dispositivo utilizarlo para testear las aplicaciones. Para ello nos dirigiremos a la sección "Provisioning" y hacemos clic en "New Profile".
Rellenamos el nombre que deseemos dar para el perfil, seleccionamos el certificado que deseamos usar (en este caso sólo hay uno), escogemos la aplicación, los dispositivos que queremos incluir para efectuar las pruebas y pulsamos en "Submit". Regresaremos en la sección anterior y podremos ver que aparecerá nuestro nuevo perfil en estado "pending", pero en breves instantes ya estará disponible para su descarga.
Descargamos el perfil, para instalarlo tan sólo tendremos que arrastrarlo al "Organizer" que se encuentra abriendo el Xcode, vamos al menú "Windows" y seleccionamos "Organizer".
Debemos acceder a los ajustes del proyecto, en "Build Settings", vamos a "Code Signing Identity", tanto en el caso de "Debug" (desarrollo) como para "Release" (para publicar al AppStore) indicaremos que firma utilizaremos para incrustar en la aplicación.
Si nos aparece uno de los siguientes errores, significará que algo no hemos hecho bien. Os recomiendo repetir todo el proceso desde el principio.
Code Sign error: The identity 'iPhone Developer' doesn't match any valid certificate/private key pair in the default keychain
CodeSign error: code signing is required for product type 'Application' in SDK 'iOS X.X'
¿Qué tipos de certificados hay y para que se utilizan?
Principalmente hay dos tipos de certificados, uno para el desarrollo y otro para su distribución. Para cada caso existen certificados con distintas funciones:
Todas las aplicaciones deben estar firmadas por un certificado válido antes de poder ser ejecutados en un dispositivo de Apple o publicarlos al AppStore.
Certificados SSL, permite establecer una conexión segura hacia el servidor de notificación Push de Apple (APNS), para este tipo de certificados tendremos que crear uno para cada aplicación si queremos enviar notificaciones sino, estos certificados nos los podremos ahorrar.
¿Cómo crear los certificados?
1. Una vez obtengamos la licencia, tendremos acceso al IOS Provisioning portal, desde ahí nos dirigiremos a "Certificates" >> "Development" y pulsaremos en "Request Certificate" para solicitar un nuevo certificado. Nos pedirá que subamos un archivo CSR.
Por eso iremos en "Aplicaciones" >> "Utilidades" y accederemos a "Acceso a Llaveros". Una vez ahí vamos al menú "Acceso a Llaveros" en "Asistente para Certificados" y hacemos clic a "Solicitar un certificado de una autoridad de certificación.
El par de claves pública y privada se generan al solicitar un certificado de una autoridad de certificación (CSR) si se utiliza el asistente de "Acceso a Llaveros".
Rellenamos nuestra dirección de correo y nombre, luego hacemos clic en "Guardado en el disco". Esto nos generará el archivo CSR (certSigningRequest), que deberemos subir en el IOS Provisioning portal.
Si volvemos al IOS Provisioning portal veremos que nuestro certificado se encuentra en el estado "Pending Issuance".
En cuestión de varios segundos recibiremos un correo electrónico notificándonos que un miembro del equipo ha solicitado un certificado.
A partir de ese instante nuestro estado habrá cambiado a "Issued", eso significa que ya podremos descargar nuestro certificado. Para instalarlo solo tendremos que arrastrarlo al "Acceso a Llaveros" o hacer doble clic.
El siguiente paso será añadir un dispositivo que utilizaremos para testear nuestras aplicaciones (podemos añadir hasta un total de 100 dispositivos distintos), para ello abriremos el "Organizer" (que lo encontraremos abriendo el Xcode, vamos al menú "Windows" y seleccionamos "Organizer"). En la sección "Devices" copiaremos el identificador (conocido también como token) del dispositivo, una cadena alfanumérica de 40 caracteres.
Luego nos dirigimos de nuevo al IOS Provisioning portal, en la sección "Devices" y pulsamos en "Add Devices". Introducimos el nombre como queramos nombrar al dispositivo, pegamos el identificador que hemos copiado antes y le damos a "Submit".
Una vez hemos añadido el dispositivos, a continuación crearemos un identificador de aplicación. Para ello iremos a la sección "App IDs" y pulsamos en "New App ID".
Un ID de aplicación es la combinación de una cadena de diez caracteres único llamado "Bundle Seed ID" y el tradicional identificador de paquete (CF).
En el campo "Bundle identifier" Apple nos recomienda que utilizemos el estilo invertido usado en un nombre de dominio. Por ejemplo si disponemos de un dominio llamado "midominio.com", y a nuestra aplicación la queremos llamar "miaplicacion", podemos añadir un subdominio a nuestro dominio de tal forma que pase a llamarse "miaplicacion.midominio.com". Ahora si invertimos el dominio podemos utilizar este nombre como identificador de paquete "com.midominio.miaplicacion", es una buena forma de mantener organizada y ordenada los nombres de aplicaciones, cuando tengamos muchas aplicaciones agradecereis haber seguido las recomendaciones de Apple.
Podemos también usar el carácter comodín (asterisco '*') para que un único identificador de aplicación se puede utilizar para construir e instalar varias aplicaciones.
4. Ahora podremos solicitar un perfil de aprovisionamiento, que no es más que una colección de entidades digitales que vincula desarrolladores con dispositivos permitiendo a un dispositivo utilizarlo para testear las aplicaciones. Para ello nos dirigiremos a la sección "Provisioning" y hacemos clic en "New Profile".
Rellenamos el nombre que deseemos dar para el perfil, seleccionamos el certificado que deseamos usar (en este caso sólo hay uno), escogemos la aplicación, los dispositivos que queremos incluir para efectuar las pruebas y pulsamos en "Submit". Regresaremos en la sección anterior y podremos ver que aparecerá nuestro nuevo perfil en estado "pending", pero en breves instantes ya estará disponible para su descarga.
Descargamos el perfil, para instalarlo tan sólo tendremos que arrastrarlo al "Organizer" que se encuentra abriendo el Xcode, vamos al menú "Windows" y seleccionamos "Organizer".
Debemos acceder a los ajustes del proyecto, en "Build Settings", vamos a "Code Signing Identity", tanto en el caso de "Debug" (desarrollo) como para "Release" (para publicar al AppStore) indicaremos que firma utilizaremos para incrustar en la aplicación.
Si nos aparece uno de los siguientes errores, significará que algo no hemos hecho bien. Os recomiendo repetir todo el proceso desde el principio.
Code Sign error: The identity 'iPhone Developer' doesn't match any valid certificate/private key pair in the default keychain
CodeSign error: code signing is required for product type 'Application' in SDK 'iOS X.X'