{"meta":{"title":"Compilación y prueba de aplicaciones de Xamarin","intro":"Aprenda a crear un flujo de trabajo de integración continua (CI) en GitHub Actions para compilar y probar la aplicación Xamarin.","product":"GitHub Actions","breadcrumbs":[{"href":"/es/enterprise-cloud@latest/actions","title":"GitHub Actions"},{"href":"/es/enterprise-cloud@latest/actions/tutorials","title":"Tutoriales"},{"href":"/es/enterprise-cloud@latest/actions/tutorials/build-and-test-code","title":"Crea y prueba tu código"},{"href":"/es/enterprise-cloud@latest/actions/tutorials/build-and-test-code/xamarin-apps","title":"aplicaciones de Xamarin"}],"documentType":"article"},"body":"# Compilación y prueba de aplicaciones de Xamarin\n\nAprenda a crear un flujo de trabajo de integración continua (CI) en GitHub Actions para compilar y probar la aplicación Xamarin.\n\n## Introducción\n\nEn esta guía se muestra cómo crear un flujo de trabajo que realice la integración continua (CI) para el proyecto de Xamarin. El flujo de trabajo que creas te permitirá ver cuándo las confirmaciones de una solicitud de extracción causan la construcción o las fallas de prueba en tu rama por defecto; este enfoque puede ayudar a garantizar que tu código siempre sea correcto.\n\nPara obtener una lista completa de las versiones disponibles del SDK de Xamarin en los ejecutores de macOS hospedados en GitHub Actions, consulta el archivo README correspondiente a la versión de macOS que quieres usar en el [repositorio de las imágenes del ejecutor de GitHub Actions](https://github.com/actions/runner-images/tree/main/images/macos).\n\n## Requisitos previos\n\nSe recomienda tener conocimientos básicos sobre Xamarin, .NET Core SDK, YAML, opciones de configuración de flujo de trabajo y cómo crear un archivo de flujo de trabajo. Para más información, consulte:\n\n* [Sintaxis del flujo de trabajo para GitHub Actions](/es/enterprise-cloud@latest/actions/using-workflows/workflow-syntax-for-github-actions)\n* [Introducción a .NET](https://dotnet.microsoft.com/learn)\n* [Información sobre Xamarin](https://dotnet.microsoft.com/learn/xamarin)\n\nPara usar los ejemplos de la guía, necesitarás un repositorio en GitHub.com. Los ejecutores de macOS no están disponibles en subdominios de GHE.com, como `octocorp.ghe.com`.\n\n## Compilación de aplicaciones Xamarin.iOS\n\nEn el ejemplo siguiente se muestra cómo cambiar las versiones predeterminadas del SDK de Xamarin y compilar una aplicación Xamarin.iOS.\n\n```yaml\nname: Build Xamarin.iOS app\n\non: [push]\n\njobs:\n  build:\n\n    runs-on: macos-latest\n\n    steps:\n    - uses: actions/checkout@v6\n    - name: Set default Xamarin SDK versions\n      run: |\n        $VM_ASSETS/select-xamarin-sdk-v2.sh --mono=6.12 --ios=14.10\n\n    - name: Set default Xcode 12.3\n      run: |\n        XCODE_ROOT=/Applications/Xcode_12.3.0.app\n        echo \"MD_APPLE_SDK_ROOT=$XCODE_ROOT\" >> $GITHUB_ENV\n        sudo xcode-select -s $XCODE_ROOT\n\n    - name: Setup .NET Core SDK 5.0.x\n      uses: actions/setup-dotnet@v4\n      with:\n        dotnet-version: '5.0.x'\n\n    - name: Install dependencies\n      run: nuget restore <sln_file_path>\n\n    - name: Build\n      run: msbuild <csproj_file_path> /p:Configuration=Debug /p:Platform=iPhoneSimulator /t:Rebuild\n```\n\n## Desarrollo de aplicaciones con Xamarin.Android\n\nEn el ejemplo siguiente se muestra cómo cambiar las versiones predeterminadas del SDK de Xamarin y crear un Xamarin. Aplicación Android.\n\n```yaml\nname: Build Xamarin.Android app\n\non: [push]\n\njobs:\n  build:\n\n    runs-on: macos-latest\n\n    steps:\n    - uses: actions/checkout@v6\n    - name: Set default Xamarin SDK versions\n      run: |\n        $VM_ASSETS/select-xamarin-sdk-v2.sh --mono=6.10 --android=10.2\n\n    - name: Setup .NET Core SDK 5.0.x\n      uses: actions/setup-dotnet@v4\n      with:\n        dotnet-version: '5.0.x'\n\n    - name: Install dependencies\n      run: nuget restore <sln_file_path>\n\n    - name: Build\n      run: msbuild <csproj_file_path> /t:PackageForAndroid /p:Configuration=Debug\n```\n\n## Especificación de una versión de .NET\n\nPara utilizar una versión preinstalada del SDK de .NET Core en un runner hospedado por GitHub, utilice la acción `setup-dotnet`. Esta acción busca una versión específica de .NET de la memoria caché de herramientas en cada ejecutor y agrega los archivos binarios necesarios a `PATH`. Estos cambios persistirán para el resto del trabajo.\n\nLa acción `setup-dotnet` es la forma recomendada de usar .NET con GitHub Actions, ya que garantiza un comportamiento coherente entre distintos ejecutores y versiones diferentes de .NET. Si usa un ejecutor autohospedado, debe instalar .NET y agregarlo a `PATH`. Para más información, vea la acción [`setup-dotnet`](https://github.com/marketplace/actions/setup-net-core-sdk)."}