@drawohara¡me ❤️ esto! << haz clic aquí 🐛 🫖 🧚
/beginner-tutorial-i-os-certificates-provisioning-profiles
publicado el: 2013-10-24

Para un nuevo desarrollador de iOS, pueden ser realmente confusos. Tienes una aplicación que simplemente quieres que otras personas puedan probar en su dispositivo, y te diriges al portal del desarrollador de Apple con certificados, dispositivos y perfiles de provisionamiento. Antes de que tu cuerpo entre en shock, lee el resto de esta publicación para una explicación sencilla de todo.

La combinación de certificados, dispositivos y perfiles de provisionamiento es la respuesta de Apple a algunas preguntas difíciles:

P: ¿Cómo garantizas que la aplicación que estás descargando no ha sido modificada por algún hacker y realmente es del desarrollador/empresa que dice ser?

R: Certificados. ¿Alguna vez has aprendido sobre el correo electrónico cifrado PGP? Ese asunto en el que hay una clave pública y una clave privada? Eso es lo que está sucediendo aquí, excepto que estás abstraído de tener que preocuparte por eso gracias a la aplicación de Mac “Keychain Access”. Cuando agregas un nuevo certificado en el portal y sigues las instrucciones para usar “Keychain Access” para cargar una solicitud de certificado, “Keychain Access” usa tu clave privada para crear una clave pública, que luego se incrusta en la solicitud de certificado que se envía a Apple. Apple te devuelve un certificado que luego pones en tu llavero (ahora puedes descargarlo e agregarlo automáticamente a través de Xcode).

(Actualización: parece que también puedes hacer que Xcode gestione tus certificados/"Identidades de firma" en las preferencias).

Ten en cuenta que también hay diferentes certificados para diferentes escenarios. Los certificados de desarrollador se utilizan cuando simplemente estás haciendo que cualquier aplicación (app id: *) funcione y estás desarrollando localmente y en tu dispositivo de desarrollo que está conectado a tu computadora. Un certificado AdHoc se utiliza cuando deseas permitir que algunos testers instalen tu aplicación en su dispositivo antes del lanzamiento público en la AppStore. Los certificados de AppStore y AdHoc están vinculados a una aplicación específica (app id), y generalmente utilizan el certificado de una organización, ya que el certificado es cómo Apple sabe qué mostrar en la línea “Desarrollado por” en la lista de la App Store.

P: ¿Cómo podemos permitir que un puñado de testers instalen la aplicación en su teléfono y la prueben antes de que la lancemos al mundo entero a través de la App Store?

R: Dispositivos y perfiles de provisionamiento. Apple solo permite a sus usuarios instalar aplicaciones a través de la App Store. Pero cuando eres un desarrollador y quieres que algunas personas la prueben antes de que vaya a la App Store, debes usar perfiles de provisionamiento y dispositivos.

Primero, consigues que alguien te dé su UUID de dispositivo (identificador único universal), que generalmente se hace a través de un servicio como Testflight o HockeyApp donde una persona puede registrarse para ser uno de tus testers y el servicio te enviará automáticamente por correo electrónico su UUID. Para evitar que eludas la App Store, Apple te limita a agregar solo 100 dispositivos en un año a tu cuenta de desarrollador de iOS.

Luego creas un perfil de provisionamiento. Cada perfil de provisionamiento incorpora un certificado para firmar la aplicación de manera segura desde una persona/organización específica. Los perfiles de provisionamiento también declaran quién puede instalar la compilación de la aplicación. En el caso de un perfil de provisionamiento de App Store, está diciendo que esa compilación de la aplicación puede ser instalada por cualquier persona siempre que se descargue a través de la App Store.

Cuando estás poniendo a algunos testers a bordo, querrás usar un perfil de provisionamiento Ad Hoc (y certificado). En la pantalla “Editar” del perfil de provisionamiento, podrás seleccionar cualquiera de los dispositivos listados en “Dispositivos” en tu portal de desarrollador. Marca la casilla junto a los que deseas incluir (Nota: puedes marcar o desmarcar más o menos más tarde).

Genera este perfil, descárgalo manualmente o a través de las preferencias de Xcode, selecciónalo al archivar tu aplicación, y luego podrás cargar ese archivo .ipa a un servicio como Testflight para que tus testers lo instalen.

Algunas imágenes guía más: