Xamarin Hot Restart
O Xamarin Hot Restart permite que você teste rapidamente as alterações em seu aplicativo durante o desenvolvimento, incluindo edições, recursos e referências de código de vários arquivos. Ele envia por push as novas alterações para o pacote de aplicativo existente no alvo da depuração, o que resulta em um ciclo de build e implantação muito mais rápido.
Importante
A Reinicialização Dinâmica do Xamarin está disponível atualmente no Visual Studio 2019 versão 16.5 estável e dá suporte a aplicativos iOS usando Xamarin.Forms. O suporte para aplicativos Visual Studio para Mac e nãoXamarin.Forms está no roteiro.
Requisitos
- Visual Studio 2019 versão 16.5 ou superior
- iTunes (Microsoft Store ou versões de 64 bits)
- Conta de desenvolvedor da Apple e registro pago do Programa de Desenvolvedores da Apple
Instalação inicial
Observação
A Reinicialização Dinâmica do Xamarin está desabilitada por padrão no Visual Studio 16.8 e nas versões anteriores. Você pode habilitá-lo em Ferramentas > Opções > Recursos > de Visualização do Ambiente > Habilitar Reinicialização Dinâmica do Xamarin. A partir do Visual Studio 16.9, a Reinicialização Dinâmica do Xamarin está ativada por padrão e pode ser desativada nas Opções > de Ferramentas > Configurações > do Xamarin > iOS Habilitar Reinicialização Dinâmica.
Verifique se o projeto do iOS está definido como o projeto de inicialização e se a configuração de build está definida como Depurar|iPhone.
- Se esse for um projeto existente, acesse Compilar > Configuration Manager... e verifique se Implantar está habilitado para o projeto do iOS.
Selecione e clique em Dispositivo Local na barra de ferramentas para iniciar o assistente de instalação:
Se o iTunes não estiver instalado, clique em Baixar iTunes para baixar o instalador. Clique em Avançar quando a instalação do iTunes for concluída.
Conecte um dispositivo iOS a seu computador. Se um dispositivo já estava conectado, desconecte-o e reconecte-o. O nome do dispositivo aparecerá no assistente assim que for detectado. Clique em Próximo.
Insira suas credenciais de conta de Desenvolvedor da Apple e clique em Avançar.
Selecione uma equipe de desenvolvimento usando o menu suspenso para habilitar o provisionamento automático no projeto. Clique em Concluir.
Observação
É recomendado usar o provisionamento automático para que dispositivos iOS adicionais possam ser facilmente configurados para implantação. No entanto, você poderá desabilitá-lo e continuar usando o provisionamento manual se os perfis de provisionamento corretos estiverem presentes.
Usar o Xamarin Hot Restart
Após a configuração inicial, seu dispositivo conectado aparecerá no menu suspenso do alvo de depuração. Para depurar seu aplicativo, selecione o dispositivo na lista suspensa e clique no botão Executar. Talvez seja necessário ver uma mensagem no Visual Studio solicitando que você inicie manualmente o aplicativo no dispositivo para iniciar a sessão de depuração.
Você pode fazer edições a seus arquivos de código durante a depuração e pressionar o botão Reiniciar na barra de ferramentas de depuração ou usar Ctrl + Shift + F5 para reiniciar a sessão de depuração com as novas alterações aplicadas:
Você também pode usar o símbolo de HOTRESTART
pré-processador para impedir que determinado código seja executado durante a depuração com a Reinicialização Dinâmica do Xamarin.
Limitações
- Atualmente, há suporte apenas para aplicativos iOS criados com Xamarin.Forms dispositivos iOS e .
- Há suporte apenas para dispositivos iOS de 64 bits. A partir do iOS 11, a Apple não permite mais executar aplicativos iOS na arquitetura de 32 bits (dispositivos anteriores ao iPhone 5s).
- Não há suporte para arquivos Storyboard e XIB, e o aplicativo poderá falhar se tentar carregá-los no runtime. Use o símbolo de
HOTRESTART
pré-processador para impedir que esse código seja executado. - Não há suporte para bibliotecas e estruturas estáticas do iOS e você poderá ver erros de runtime ou falhas se o aplicativo tentar carregá-las. Use o símbolo de
HOTRESTART
pré-processador para impedir que esse código seja executado. Há suporte para bibliotecas dinâmicas do iOS. - Não é possível usar o Xamarin Hot Restart para criar pacotes de aplicativos para publicação. Você ainda precisará de um computador Mac para fazer uma compilação completa, assinatura e implantação de seu aplicativo para produção.
- Atualmente, não há suporte para catálogos de ativos. Ao usar a Reinicialização Dinâmica, seu aplicativo mostrará o ícone padrão e a tela de inicialização para aplicativos Xamarin. Quando emparelhado com um Mac ou desenvolvendo em um Mac, seus Catálogos de Ativos funcionarão.
Solucionar problemas
- Há um problema conhecido no qual ter builds específicos do dispositivo habilitados impede que o aplicativo entre no modo de depuração. A solução alternativa é desabilitar isso em Propriedades > iOS Compilar e tentar novamente a depuração. Isso será corrigido em uma versão futura.
- Se o aplicativo já estiver presente no dispositivo, tentar implantar com o Hot Restart poderá falhar com um erro de
AMDeviceStartHouseArrestService
. A solução alternativa é desinstalar o aplicativo no dispositivo e implantá-lo novamente. - Inserir uma ID da Apple que não faz parte do Programa para Desenvolvedores da Apple pode resultar no seguinte erro:
Authentication Error. Xcode 7.3 or later is required to continue developing with your Apple ID
. Você deve ter uma conta de Desenvolvedor da Apple válida para usar a Reinicialização Dinâmica do Xamarin em dispositivos iOS.
Para relatar problemas adicionais, use a ferramenta de comentários em Ajuda > Enviar Comentários > Relatar um Problema.