Compilación de una aplicación de iOS con la CLI de .NET

En este tutorial, aprenderás a crear y ejecutar una aplicación.NET Multi-platform App UI (.NET MAUI) en iOS mediante la interfaz de línea de comandos (CLI) de .NET en macOS:

  1. Para crear aplicaciones .NET MAUI, deberás descargar y ejecutar el instalador para el entorno de ejecución de .NET más reciente. También tendrás que descargar e instalar la versión más reciente de Xcode, que también está disponible en la aplicación App Store en tu Mac.

  2. En el equipo Mac, abre Terminal y comprueba que tienes instalado el entorno de ejecución de .NET más reciente:

    dotnet --version
    
  3. En Terminal, instala la compilación pública más reciente de .NET MAUI:

    sudo dotnet workload install maui --source https://api.nuget.org/v3/index.json
    

    Este comando instalará la versión más reciente publicada de .NET MAUI, incluidos los SDK de plataforma necesarios.

  4. En Terminal, crea una nueva aplicación .NET MAUI mediante la CLI de .NET:

    dotnet new maui -n "MyMauiApp"
    
  1. En Terminal, cambia el directorio a MyMauiApp y compila y ejecuta la aplicación:

    cd MyMauiApp
    dotnet build -t:Run -f net8.0-ios
    

    El comando dotnet build restaurará las dependencias del proyecto, compilará la aplicación y la iniciará en el simulador predeterminado.

  2. En el simulador predeterminado, presiona el botón Hacer clic aquí varias veces y observa que se incrementa el recuento del número de clics de botón.

    Aplicación MAUI de .NET que se ejecuta en el simulador de iOS predeterminado.

Compilación con una versión específica de Xcode

Si tiene varias versiones de Xcode instaladas en el equipo Mac, es posible especificar qué versión de Xcode se debe usar al compilar la aplicación. Hay una serie de enfoques que se pueden usar para lograrlo, pero el enfoque recomendado es establecer la variable de entorno MD_APPLE_SDK_ROOT en la ruta de acceso de la versión de Xcode.

Advertencia

No se recomienda usar xcode-select -s para establecer la versión de Xcode que se va a usar.

Para establecer la variable de entorno MD_APPLE_SDK_ROOT durante la sesión de terminal actual:

  1. Abra la aplicación Terminal.

  2. Escriba el siguiente comando, sustituya en la versión de Xcode y presione Entrar:

    export MD_APPLE_SDK_ROOT=/Applications/Xcode_14.1.0.app
    

Si desea establecer esta variable de entorno de forma permanente, puede agregar el comando export al perfil de shell, como .zprofile.

Inicio de la aplicación en un simulador específico

Una aplicación .NET MAUI iOS se puede iniciar en un simulador de iOS específico desde un equipo Mac proporcionando tu identificador de dispositivo único (UDID):

  1. En el equipo Mac, abre Xcode, selecciona el elemento de menú Windows > Devices and Simulators y luego la pestaña Simulators.

    Captura de pantalla de la pestaña Simuladores de Xcode.

  2. Haz clic con el botón derecho en el simulador elegido y selecciona Copiar identificador para copiar el UDID en el Portapapeles.

    Captura de pantalla de la opción de menú Copiar identificador en Xcode.

    Como alternativa, puedes recuperar una lista de valores UDID ejecutando el comando simctl list:

    /Applications/Xcode.app/Contents/Developer/usr/bin/simctl list
    
  1. En Terminal, compila la aplicación y ejecútala en el simulador elegido especificando la propiedad _DeviceName MSBuild mediante la -popción MSBuild:

    dotnet build -t:Run -f net8.0-ios -p:_DeviceName=:v2:udid=MY_SPECIFIC_UDID
    

    Por ejemplo, usa el siguiente comando para compilar la aplicación y ejecutarla en el simulador del iPhone 13 Pro:

    dotnet build -t:Run -f net8.0-ios -p:_DeviceName=:v2:udid=E25BBE37-69BA-4720-B6FD-D54C97791E79
    
  2. En el simulador elegido, presiona el botón Hacer clic aquí varias veces y observa que se incrementa el recuento del número de clics de botón.

    Aplicación MAUI de .NET que se ejecuta en el simulador de iPhone 13 Pro.

Inicio de la aplicación en un dispositivo

Se debe aprovisionar un dispositivo para poder implementar en él una aplicación de iOS. Para obtener más información, consulta Aprovisionamiento de dispositivos para iOS. Una vez que se ha aprovisionado un dispositivo, se puede iniciar una aplicación de .NET MAUI iOS en el dispositivo desde un equipo Mac proporcionando su identificador de dispositivo único (UDID):

  1. Conecta el dispositivo a tu equipo Mac local con un cable USB.

  2. Abre Xcode y ve a Window > Devices and Simulators.

  3. En Xcode, selecciona la pestaña Devices y selecciona el dispositivo en la lista de dispositivos conectados.

  4. En Xcode, copia el valor Identifier en el Portapapeles:

    La ventana del simulador y los dispositivos de Xcode con la ubicación de la cadena del identificador de iOS resaltada.

    Como alternativa, haz clic con el botón derecho en el dispositivo y selecciona Copy Identifier para copiar el UDID en el Portapapeles.

  1. En Terminal, compila la aplicación y ejecútala en el simulador elegido especificando la propiedad _DeviceName MSBuild mediante la -popción MSBuild:

    dotnet build -t:Run -f net8.0-ios -p:RuntimeIdentifier=ios-arm64 -p:_DeviceName=MY_SPECIFIC_UDID
    

    Reemplaza "MY_SPECIFIC_UDID" por el identificador de dispositivo que has copiado en el Portapapeles.