Para empezar a desarrollar aplicaciones de .NET MAUI nativas y multiplataforma en Windows, macOS o Linux, instale la versión más reciente de Visual Studio Code siguiendo los pasos de instalación.
Requisitos previos
Para compilar, firmar e implementar aplicaciones .NET MAUI para iOS, necesitará lo siguiente:
Instalación
Para crear aplicaciones .NET MAUI, deberá instalar la versión más reciente de Visual Studio Code.
En Visual Studio Code, en la pestaña Extensiones, busque ".NET MAUI" e instale la extensión .NET MAUI. La extensión .NET MAUI instala automáticamente las extensiones C# Dev Kit y C#, que son necesarias para que se ejecute la extensión .NET MAUI.
Nota:
La extensión .NET MAUI requiere el Kit de desarrollo de C# y las extensiones de C#. Debes iniciar sesión en C# Dev Kit para usar la funcionalidad de la extensión .NET MAUI. Para obtener más información, consulte esta entrada de blog para obtener más información sobre el Kit de desarrollo de C# y su familia de extensiones.
Instalación de cargas de trabajo de .NET y .NET MAUI
Instale .NET 8.
En Windows, se recomienda usar el instalador de Visual Studio para administrar las instalaciones de cargas de trabajo de .NET y .NET MAUI. Aquí puedes encontrar instrucciones sobre cómo usar el instalador de Visual Studio.
En Linux, instale utilizando las instrucciones de instalación con script.
Instala la carga de trabajo de .NET MAUI.
En Windows, a menos que se instale a través del instalador de Visual Studio, ejecute el siguiente comando en un terminal:
dotnet workload install maui
En macOS, ejecute el siguiente comando en un terminal:
sudo dotnet workload install maui
En Linux, ejecuta el siguiente comando en un terminal:
dotnet workload install maui-android
Para depurar una aplicación .NET MAUI en Visual Studio Code, debe tener una plataforma de destino válida en relación con el sistema operativo de la máquina de desarrollo. La inclusión de plataformas de destino no válidas impedirá que el proyecto se compile. Puede administrar las plataformas de destino en el archivo de proyecto de la aplicación (.csproj):
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0-android;net8.0-ios;net8.0-maccatalyst</TargetFrameworks>
<TargetFrameworks Condition="$([MSBuild]::IsOSPlatform('windows'))">$(TargetFrameworks);net8.0-windows10.0.19041.0</TargetFrameworks>
El sistema operativo |
Plataformas de destino compatibles |
Windows |
Windows, Android |
macOS |
Android, iOS, macOS |
Linux |
Android |
iOS y macOS
Para depurar en un destino de iOS o macOS en Visual Studio Code, haz lo siguiente:
- Instale la versión de Xcode que requiere la versión de .NET MAUI que está usando. Para obtener información, vea versiones de versión. La versión estable de Xcode más reciente se puede descargar desde la App Store de Apple.
- Ejecuta
xcode-select --install
en un terminal para adquirir las herramientas de línea de comandos de Xcode.
- Abra Xcode y asegúrese de aceptar los contratos de licencia.
Android
Para depurar en un destino de Android en Visual Studio Code, haz lo siguiente:
- Instala Microsoft OpenJDK 17.
- Instala Android SDK mediante uno de los métodos siguientes:
- (Recomendado) Crear un nuevo proyecto de .NET MAUI (
dotnet new maui
) y usar el destino de InstallAndroidDependencies.
- Instalación mediante Visual Studio (Windows únicamente).
- Instala a través de Android Studio.
- Instalar mediante el administrador de paquetes preferido en Linux.
Solución de problemas
Es posible que tengas problemas a la hora de configurar la extensión de .NET MAUI para Visual Studio Code. Para ver detalles sobre los errores relacionados con la extensión, ve a la ventana Salida (CTRL/CMD + Mayús + u) y selecciona .NET MAUI en la lista desplegable. Consulte las secciones siguientes para ayudar a solucionar el problema. Si sigue teniendo problemas después de seguir los pasos de solución de problemas, notifique un problema.
Creación de un proyecto
Si intentas crear un nuevo proyecto y el explorador de archivos sigue apareciendo en un bucle infinito, es posible que no selecciones una carpeta vacía. Comprueba que no haya archivos o carpetas ocultos, crea una nueva carpeta o crea tu aplicación .NET MAUI desde la línea de comandos mediante dotnet new maui
.
Uso del destino de InstallAndroidDependencies
.NET 8 tiene un destino de compilación que te ayuda a configurar tu entorno de Android. Ejecuta el siguiente comando en un terminal para configurar la máquina y el entorno de Android:
dotnet build -t:InstallAndroidDependencies -f:net8.0-android -p:AndroidSdkDirectory="<AndroidSdkPath>" -p:JavaSdkDirectory="<JavaSdkPath>" -p:AcceptAndroidSDKLicenses=True
En el comando anterior:
AndroidSdkDirectory="<AndroidSdkPath>"
: instala o actualiza las dependencias de Android en la ruta de acceso absoluta especificada.
- Windows: la ruta de AndroidSdkPath sugerida es
%LOCALAPPDATA%/Android/Sdk
.
- macOS: la ruta de AndroidSdkPath sugerida es
$HOME/Library/Android/sdk
.
JavaSdkDirectory="<JavaSdkPath>"
: instala Java en la ruta de acceso absoluta especificada.
AcceptAndroidSDKLicenses=True
: acepta las licencias de Android necesarias para el desarrollo.
Hay un error que indica que no se encontró el Android SDK o el SDK de Java
- Abre la paleta de comandos (Ctrl/Cmd + Mayús + P) y busca el comando
.NET MAUI: Configure Android
. Selecciona "Establecer ruta de acceso de Android SDK" y "Establecer ruta de acceso de Android JDK" y comprueba que apuntan a las instalaciones de cada uno.
- La carpeta Android SDK debe tener subcarpetas como
build-tools
, cmdline-tools
y platform-tools
.
- La carpeta Java OpenJDK debe tener subcarpetas como
bin
, lib
, entre otras.
- En Windows, si instalas a través de Visual Studio, el SDK de Java estará en
C:\Program Files\Microsoft\
y el SDK de Android estará en C:\Program Files (x86)\Android\android-sdk
.
- Establece la variable de entorno
JAVA_HOME
en una ruta de acceso de OpenJDK de Java válida.
- Establece la variable de entorno
ANDROID_HOME
para tu ruta de acceso del SDK de Android.
- Comprueba las versiones mínimas de las dependencias de Android instaladas:
- build-tools >= 34.0.0
- cmdline-tools == 11.0
- platforms;android-34*
- .NET 8: platform-tools = 34.0.5
Hay un error que indica que no se aceptan las licencias de Android
En un símbolo del sistema o terminal con privilegios elevados, ve a la carpeta cmdline-tools/latest/bin/
del SDK de Android, ejecuta sdkmanager --licenses
y después sigue las indicaciones de la CLI.
Mis dependencias de Android no se están cargando en el Explorador de soluciones, pero mi aplicación se compila correctamente
Este comportamiento es un problema conocido de la instalación de %APPDATA%
en Windows y se corregirá en una futura versión.
Configuración de iOS/Xcode
- Si recibe un error que Xcode no encuentra, ejecute
xcode-select --install
en un terminal y compruebe que xcode-select -p
apunta a la instalación de Xcode.
- Si sigues teniendo problemas, abre el propio Xcode para asegurarte de que se carga correctamente. Una vez abierto Xcode, ve a Xcode > Settings > Locations y comprueba que el campo Command Line Tools apunta al Xcode correcto.
- Hay un problema conocido de que a veces tiene que compilar la aplicación de iOS/macOS dos veces para que se implemente. Esto se corregirá en una próxima versión.
Problemas de depuración
- La depuración puede fallar por varias razones. Si no hay un error claro en la ventana Salida, compruebe primero que usa la configuración de ejecución de C# en Visual Studio Code.
- Si usa una versión anterior de .NET, el depurador de C# no es compatible con las aplicaciones de .NET MAUI. Puede usar la configuración de depuración de .NET MAUI heredada desactivando la configuración de extensión MAUI > Configuración > Experimental > Usar VSDbg.
- Puedes probar una compilación de línea de comandos desde el terminal para ver si el error está con el código o la extensión de .NET MAU Por ejemplo, puedes ejecutar
dotnet build -f:net8.0-android
para ver si la compilación de Android se realiza correctamente fuera de Visual Studio Code. Si esta compilación se realiza correctamente, Notifica un problema
Restricciones conocidas
- Actualmente, no puedes cambiar la plataforma de destino para IntelliSense (mostrará el resaltado de sintaxis solo para la primera plataforma de destino que aparece en el archivo .csproj). Esta funcionalidad está en curso. Para obtener el resaltado de sintaxis de otros destinos (por ejemplo, Android en lugar de iOS), puede reordenar las plataformas de destino en el archivo del proyecto.
- La recarga activa de .NET se encuentra actualmente en versión preliminar en el Kit de desarrollo de C#.
Envíanos tus comentarios sobre otras características que te gustaría ver a medida que seguimos creando esta nueva experiencia.
Envío de comentarios
Lee las Preguntas más frecuentes sobre el Kit de desarrollo de C# y consulta los Problemas conocidos existentes antes de presentar un nuevo problema o sugerencia. Puedes presentar sugerencias y problemas desde Visual Studio Code a través del cuadro de diálogo Ayuda > Notificar problema. Asegúrate de seleccionar "Una extensión" y luego la extensión de .NET MAUI en la lista desplegable.