Objetivos de compilación para iOS, Mac Catalyst, macOS y tvOS

Los siguientes destinos de compilación se definen en .NET para proyectos de iOS, Mac Catalyst, macOS y tvOS.

Compilación (predeterminada)

Compila el código fuente dentro de un proyecto y todas las dependencias.

Limpio

Quita todos los archivos generados por el proceso de compilación.

CalcularDispositivosDisponibles

Consulta y devuelve una lista de dispositivos y simuladores de iOS o tvOS disponibles que se pueden usar con dotnet run.

El SDK de .NET llama automáticamente a este destino mediante el comando dotnet run para admitir la selección de dispositivo con la opción --device. Devuelve un @(Devices) grupo de elementos donde cada dispositivo tiene los metadatos siguientes:

  • Descripción: el nombre del dispositivo (por ejemplo, "iPhone 16 - iOS 26.0" para simuladores, "Mi iPhone 16" para dispositivos físicos)
  • Tipo: "Dispositivo" o "Simulador"
  • OSVersion: la versión del sistema operativo del dispositivo
  • UDID: UDID del dispositivo
  • RuntimeIdentifier: Identificador de tiempo de ejecución del dispositivo

Por ejemplo, para enumerar todos los dispositivos disponibles:

$ dotnet build -t:ComputeAvailableDevices

Este destino forma parte de la especificación de selección de dispositivos del SDK de .NET y habilita comandos como:

$ dotnet run --device UDID

Se ha agregado en .NET 11.

GetApplicationArtifacts

Compila el proyecto y devuelve el grupo de @(ApplicationArtifact) elementos. Este destino siempre se ejecuta Build primero para que los artefactos de plataforma .app, .ipa, .pkg, y .xcarchive se produzcan y recopilen antes de que se ejecuten los destinos de extensión de metadatos personalizados. El Publish destino devuelve el mismo grupo de elementos para los artefactos que crea.

El grupo de elementos devuelto refleja los artefactos que la invocación actual está configurada para compilar; no busca los .ipa archivos, .pkg o .xcarchive dejados en el disco por una compilación anterior. El .app bundle siempre se recopila para un proyecto de aplicación (excepto los proyectos de extensión de app y de app para watch), mientras que las salidas .ipa, .pkg y .xcarchive solo se recopilan cuando BuildIpa, CreatePackage o ArchiveOnBuild (respectivamente) están habilitados en la misma invocación. El objetivo Publish habilita BuildIpa (móvil) o CreatePackage (escritorio) de forma predeterminada.

$ dotnet build MyApp.csproj -t:GetApplicationArtifacts -getItem:ApplicationArtifact
$ dotnet build MyApp.csproj -t:Publish -getItem:ApplicationArtifact

Consulte ApplicationArtifact para ver los metadatos admitidos.

Los objetivos que necesiten añadir o actualizar metadatos @(ApplicationArtifact) antes de que GetApplicationArtifacts o Publish devuelvan resultados pueden añadirlos a GetApplicationArtifactsDependsOn.

Correr

Compila el código fuente dentro de un proyecto y todas las dependencias y, a continuación, lo implementa y lo ejecuta en un simulador o dispositivo predeterminado. Se puede establecer un destino de implementación específico mediante la propiedad $(Device).

dotnet build -t:Run project.csproj -p:Device=<udid>