Aprovisionamiento manual para aplicaciones iOS
El aprovisionamiento manual es un enfoque para implementar una aplicación .NET Multi-platform App UI (.NET MAUI) para iOS en un dispositivo, donde tienes control total sobre los datos de aprovisionamiento que se crean. Con este enfoque, crearás y administrarás manualmente identidades de firma, identificadores de aplicación y perfiles de aprovisionamiento en tu cuenta de desarrollador de Apple, y luego tendrás que descargar estos datos en Visual Studio. Antes de iniciar el proceso de aprovisionamiento manual, debes asegurarte de haber agregado una cuenta de desarrollador de Apple en Visual Studio. Para obtener más información, consulta Administración de cuentas Apple.
Los equipos de desarrollo, los certificados y los perfiles pueden administrarse desde la sección Certificates, Identifiers & Profiles de tu cuenta de desarrollador de Apple.
Creación de un certificado de firma
Con el aprovisionamiento manual, el primer paso para configurar un dispositivo de desarrollo es crear un certificado de firma, que consta de un certificado de desarrollo y una clave privada.
Los certificados de desarrollo y sus claves asociadas establecen tu identidad con Apple y te asocian a dispositivos y perfiles específicos para el desarrollo. Esto es comparable a agregar tu firma digital en las aplicaciones. Apple usa estos certificados para asegurarse de que solo puedas implementar las aplicaciones en dispositivos específicos.
Importante
Solo puedes tener dos certificados de desarrollo de iOS en todo momento. Si necesitas crear otro, deberás revocar uno existente. Si una máquina usa un certificado revocado, no podrá firmar la aplicación.
Una vez que hayas agregado tu cuenta de desarrollador de Apple a Visual Studio, debes generar un certificado de firma:
- En Visual Studio, ve a Herramientas > Opciones > Xamarin > Cuentas de Apple
- En el cuadro de diálogo Cuentas de desarrollador de Apple, selecciona un equipo y luego selecciona Ver detalles.
- En el cuadro de diálogo Detalles, selecciona Crear certificado>Desarrollo de iOS. Se creará una nueva identidad de firma y se sincronizará con Apple si tienes los permisos correctos.
Importante
La clave privada y el certificado que componen la identidad de firma también se exportarán a Keychain Access en el host de compilación de Mac, siempre que el IDE esté emparejado con él. Para obtener más información, consulta Emparejar con Mac para el desarrollo de iOS.
Introducción a los pares de claves de certificado
Un perfil de desarrollador contiene certificados, sus claves asociadas y los perfiles de aprovisionamiento asociados con la cuenta de desarrollador de Apple. Cada perfil de desarrollador tiene dos versiones: una se encuentra en la cuenta de desarrolladores de Apple, y la otra reside en un equipo local. La diferencia entre ambas es el tipo de claves que contienen: el perfil de la cuenta de desarrollador de Apple contiene todas las claves públicas asociadas con los certificados, mientras que la copia del equipo local contiene todas las claves privadas. Para que los certificados sean válidos, los pares de claves deben coincidir.
Advertencia
La pérdida del certificado y de las claves asociadas puede causar muchos problemas, ya que requerirá que se revoquen los certificados existentes y se vuelvan a aprovisionar los dispositivos asociados. Después de configurar correctamente un certificado de desarrollo, exporta una copia de seguridad y almacénala en un lugar seguro. Para más información sobre cómo hacerlo, consulta Export developer accounts en help.apple.com.
Aprovisionamiento de un dispositivo iOS para el desarrollo
Después de crear un certificado de firma, debes configurar un perfil de aprovisionamiento de desarrollo para poder implementar la aplicación en un dispositivo. El dispositivo debe ejecutar una versión de iOS compatible con Xcode.
Agregar un dispositivo
Al crear un perfil de aprovisionamiento, el perfil debe incluir qué dispositivos pueden ejecutar la aplicación. Antes de seleccionar un dispositivo para agregarlo a un perfil de aprovisionamiento, primero debes agregar el dispositivo a tu cuenta de desarrollador de Apple. Puedes agregar el dispositivo con los pasos siguientes:
Conecta el dispositivo que se va a aprovisionar al equipo local Mac con un cable USB.
Abre Xcode y navega hasta Window > Devices and Simulators.
En Xcode, selecciona la pestaña Devices y selecciona el dispositivo en la lista de dispositivos conectados.
En Xcode, copia el valor Identifier en el portapapeles:
En un explorador web, ve a la sección Devices de tu Cuenta de desarrollador de Apple y haz clic en el botón +.
En la página Register a New Device, establece la plataforma correcta y asigna un nombre al nuevo dispositivo. Después, pega el identificador del portapapeles en el campo Device ID (UDID) y haz clic en Continue:
En la página Register a New Device, revisa la información y, luego, haz clic en Register.
Repite los pasos anteriores para cualquier dispositivo iOS en el que desees implementar una aplicación .NET MAUI para iOS.
Creación de un id. de aplicación
Después de agregar un dispositivo a la cuenta de desarrollador de Apple, debes crear un identificador de aplicación. Un identificador de aplicación es similar a una cadena DNS inversa que identifica de forma única una aplicación y debe ser idéntica al identificador de lote de la aplicación.
Importante
El identificador de agrupación de una aplicación .NET MAUI se almacena en el archivo de proyecto como la propiedad Identificador de aplicación. En Visual Studio, en Explorador de soluciones, haz clic con el botón derecho en el proyecto de tu aplicación .NET MAUI y selecciona Propiedades. Después, accede a la pestaña Configuración de MAUI Compartido> General. El identificador de aplicación muestra el identificador de agrupación.
Cuando se actualiza el valor del campo Id. de aplicación, el valor de Identificador de agrupación en el archivo Info.plist se actualizará automáticamente.
Hay dos tipos de identificadores de aplicación:
- Carácter comodín. Un identificador de aplicación comodín permite usar un identificador de aplicación único para que coincida con varias aplicaciones y, normalmente, adopta el formato
com.domainname.*
. Se puede usar un identificador de aplicación comodín para instalar la mayoría de las aplicaciones en un dispositivo y se debe usar para las aplicaciones que no habilitan las funcionalidades específicas de la aplicación. - Explícita. Un identificador de aplicación explícito es único para una sola aplicación y normalmente adopta el formato
com.domainname.myid
. Un identificador de aplicación explícito permite la instalación de una aplicación, con un identificador de agrupación coincidente, en un dispositivo. Los identificadores de aplicación explícitos se usan normalmente para las aplicaciones que habilitan funcionalidades específicas de la aplicación, como Apple Pay o Game Center.
El enfoque recomendado es crear un identificador de aplicación comodín, a menos que la aplicación use funcionalidades específicas de la aplicación. Para más información sobre Capacidades, consulta las Capacidades.
Se puede crear un identificador de aplicación comodín con los pasos siguientes:
En un explorador web, ve a la sección Identificadores de tu cuenta de desarrollador de Apple y haz clic en el botón +.
En la página Register a new identifier, selecciona App IDs y selecciona Continue.
En la página Registrar un nuevo identificador, selecciona el tipo de aplicación y haz clic en el botón Continuar.
En la página Registrar un id. de aplicación, proporciona una descripción y establece el id. de agrupación a comodín. Escribe un id. de aplicación en el formato
com.domainname.*
y haz clic en el botón Continuar:En la página Confirmar tu id. de aplicación, revisa la información y, a continuación, haz clic en el botón Registrar.
Creación de un perfil de aprovisionamiento de desarrollo
Una vez que se ha creado el identificador de aplicación, se puede crear el perfil de aprovisionamiento de desarrollo. Un perfil de aprovisionamiento contiene información sobre a qué aplicación (o aplicaciones, si es un identificador de aplicación comodín) hace referencia este perfil, quién puede usar el perfil (en función de los certificados de desarrollador que se agreguen) y qué dispositivos pueden instalar la aplicación.
Se puede crear un perfil de aprovisionamiento de desarrollo con los pasos siguientes:
En un explorador web, ve a la sección Perfiles de tu cuenta de desarrollador de Apple y haz clic en el botón +.
En la página Registrar un nuevo perfil de aprovisionamiento, en la sección Desarrollo, selecciona y haz clic en el botón Continuar:
En la página Generate a Provisioning Profile, selecciona el App ID que se va a usar y, a continuación, haz clic en el botón Continue.
En la página Generar un perfil de aprovisionamiento, selecciona los certificados que deseas incluir en el perfil de aprovisionamiento y, a continuación, haz clic en el botón Continuar.
En la página Generate a Provisioning Profile, selecciona los dispositivos en los que se instalará la aplicación y, luego, haz clic en el botón Continue.
En la página Generate a Provisioning Profile, proporciona un nombre de perfil de aprovisionamiento y, a continuación, haz clic en el botón Generate.
En la página Generate a Provisioning Profile, puedes hacer clic opcionalmente en el botón Download para descargar el perfil de aprovisionamiento.
Descarga de perfiles de aprovisionamiento
Después de crear un nuevo perfil de aprovisionamiento de desarrollo en la cuenta de desarrollador de Apple, Visual Studio puede descargarlo para que esté disponible para la firma de tu aplicación:
- En Visual Studio, ve a Herramientas > Opciones > Xamarin > Cuentas de Apple.
- En el cuadro de diálogo Cuentas de desarrollador de Apple, selecciona un equipo y haz clic en el botón Ver detalles….
- En el cuadro de diálogo Detalles, comprueba que el nuevo perfil aparece en la lista Perfiles de aprovisionamiento. Es posible que debas reiniciar Visual Studio para actualizar la lista.
- En el cuadro de diálogo Detalles, haz clic en el botón Descargar todos los perfiles.
Los perfiles de aprovisionamiento se descargarán en Windows y se exportarán al host de compilación de Mac si el IDE está emparejado con él. Para obtener más información, consulta Emparejar con Mac para el desarrollo de iOS.
Habilitación del aprovisionamiento manual
Después de crear manualmente el perfil de aprovisionamiento de desarrollo y de instalarlo en Visual Studio, el proyecto de aplicación .NET MAUI debe configurarse para usar el aprovisionamiento manual.
En el Explorador de soluciones, haz clic con el botón derecho en el proyecto de aplicación de .NET MAUI y selecciona Propiedades. A continuación, ve a la pestaña MAUI Compartido > General y asegúrate de que el valor del campo Id. de aplicación corresponde al formato del identificador de aplicación que creaste anteriormente.
En las propiedades del proyecto, ve a la pestaña Firma de lote de iOS y asegúrate de que Aprovisionamiento manual esté seleccionado en la lista desplegable Esquema:
En las propiedades Firma de lotes, selecciona tu Identidad de firma y Perfil de aprovisionamiento, o bien establece ambos en Automático. Cuando tanto Identidad de firma como Perfil de aprovisionamiento se establecen en Automático, Visual Studio seleccionará la identidad de firma y el perfil de aprovisionamiento en función del Identificador de lote de Info.plist (que es idéntico al valor de la propiedad Id. de aplicación en el archivo de proyecto).
Implementación en el dispositivo
Después de configurar el aprovisionamiento en el proyecto de aplicación .NET MAUI, la aplicación se puede implementar en un dispositivo con Visual Studio.
En Visual Studio, asegúrate de que IDE está emparejado con un host de compilación de Mac. Para obtener más información, consulta Emparejar con Mac para el desarrollo de iOS.
Asegúrate de que el dispositivo iOS está conectado al host de compilación de Mac a través de USB o WiFi. Para obtener más información sobre la implementación inalámbrica, consulta Implementación inalámbrica para aplicaciones para iOS de .NET MAUI.
En la barra de herramientas de Visual Studio, usa el menú desplegable Destino de depuración para seleccionar Dispositivos remotos iOS y después el dispositivo que está conectado al host de compilación de tu Mac:
En la barra de herramientas de Visual Studio, pulsa el botón verde Inicio para iniciar la aplicación en el dispositivo remoto:
Nota:
Un enfoque alternativo para implementar una aplicación para iOS de .NET MAUI en un dispositivo es usar el reinicio frecuente. El reinicio activo te permite implementar una aplicación .NET MAUI en un dispositivo iOS local de 64 bits, desde Visual Studio, sin necesidad de un host de compilación de Mac. Para obtener más información, consulta Implementación de una aplicación de iOS mediante el reinicio rápido.
Aprovisionamiento de servicios de aplicación
Apple proporciona una selección de servicios de aplicaciones, también denominados funcionalidades, que pueden activarse para una aplicación de .NET MAUI iOS. Estas funcionalidades deben configurarse en el perfil de aprovisionamiento, cuando se crea el id. de aplicación y en el archivo Entitlements.plist que se debe agregar al proyecto de aplicación .NET MAUI. Para obtener más información sobre las funcionalidades, consulta Derechos y Funcionalidades.