{"meta":{"title":"Compilar e testar aplicativos Xamarin","intro":"Saiba como criar um fluxo de trabalho de CI (integração contínua) em GitHub Actions para criar e testar seu aplicativo Xamarin.","product":"GitHub Actions","breadcrumbs":[{"href":"/pt/actions","title":"GitHub Actions"},{"href":"/pt/actions/tutorials","title":"Tutoriais"},{"href":"/pt/actions/tutorials/build-and-test-code","title":"Criar e testar código"},{"href":"/pt/actions/tutorials/build-and-test-code/xamarin-apps","title":"Xamarin aplicativos"}],"documentType":"article"},"body":"# Compilar e testar aplicativos Xamarin\n\nSaiba como criar um fluxo de trabalho de CI (integração contínua) em GitHub Actions para criar e testar seu aplicativo Xamarin.\n\n## Introdução\n\nEste guia mostra como criar um fluxo de trabalho que executa a CI (integração contínua) para seu projeto de Xamarin. O fluxo de trabalho que você criar permitirá que você veja quando commits em um pull request gerarão falhas de criação ou de teste em comparação com o seu branch-padrão. Essa abordagem pode ajudar a garantir que seu código seja sempre saudável.\n\nPara obter uma lista completa das versões disponíveis do SDK do Xamarin nos executores do macOS hospedados no GitHub Actions, confira o arquivo LEIAME para ver a versão do macOS que você deseja usar no [repositório de imagens do executor do GitHub Actions](https://github.com/actions/runner-images/tree/main/images/macos).\n\n## Pré-requisitos\n\nRecomendamos que você tenha uma compreensão básica de Xamarin, .NET Core SDK, YAML, opções de configuração de fluxo de trabalho e como criar um arquivo de fluxo de trabalho. Para saber mais, veja:\n\n* [Sintaxe de fluxo de trabalho para o GitHub Actions](/pt/actions/using-workflows/workflow-syntax-for-github-actions)\n* [Introdução ao .NET](https://dotnet.microsoft.com/learn)\n* [Saiba mais sobre o Xamarin](https://dotnet.microsoft.com/learn/xamarin)\n\n## Criando aplicativos Xamarin.iOS\n\nO exemplo a seguir demonstra como alterar as versões padrão do SDK do Xamarin e construir um aplicativo 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## Desenvolvendo aplicativos Xamarin.Android\n\nO exemplo a seguir demonstra como alterar as versões padrão do SDK Xamarin e criar um Xamarin. Aplicativo 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## Especificando uma versão .NET\n\nPara usar uma versão pré-instalada do SDK do .NET Core em um executor hospedado no GitHub, use a ação `setup-dotnet`. Essa ação localiza uma versão específica de .NET do cache de ferramentas em cada executor e adiciona os binários necessários a `PATH`. Estas alterações persistirão para o resto do trabalho.\n\nA ação `setup-dotnet` é a maneira recomendada de usar o .NET com o GitHub Actions, pois garante um comportamento consistente entre diferentes executores e diferentes versões do .NET. Se você estiver usando um executor auto-hospedado, deverá instalar .NET e adicioná-lo a `PATH`. Para obter mais informações, confira a ação [`setup-dotnet`](https://github.com/marketplace/actions/setup-net-core-sdk)."}