Emparelhar com o Mac para desenvolvimento no Xamarin.iOS
Este guia descreve como usar o Emparelhar com Mac para conectar o Visual Studio 2019 a um host de build do Mac. As mesmas instruções se aplicam ao Visual Studio 2017.
Visão geral
A criação de aplicativos do iOS nativos requer acesso às ferramentas de build da Apple, que são executadas somente em Mac. Por isso, o Visual Studio 2019 deve se conectar a um Mac acessível na rede para criar aplicativos Xamarin.iOS.
O recurso Emparelhar com Mac do Visual Studio 2019 descobre, conecta, autentica e lembra de hosts de build do Mac para que os desenvolvedores de iOS baseados no Windows possam trabalhar produtivamente.
O Emparelhar com Mac permite o seguinte fluxo de trabalho de desenvolvimento:
Os desenvolvedores podem escrever código do Xamarin.iOS no Visual Studio 2019.
O Visual Studio 2019 abre uma conexão de rede para um host de build do Mac e usa as ferramentas de build no computador para compilar e assinar o aplicativo do iOS.
Não é necessário executar um aplicativo separado no Mac. O Visual Studio 2019 invoca builds do Mac com segurança via SSH.
O Visual Studio 2019 é notificado das alterações assim que elas ocorrem. Por exemplo, quando um dispositivo iOS está conectado ao Mac ou se torna disponível na rede, a barra de ferramentas do iOS é atualizada instantaneamente.
Várias instâncias do Visual Studio 2019 podem se conectar ao Mac simultaneamente.
É possível usar a linha de comando do Windows para criar aplicativos iOS.
Observação
Antes de seguir as instruções neste guia, conclua as seguintes etapas:
- Em um computador Windows, instale o Visual Studio 2019
- Em um Mac, instale o Xcode e o Visual Studio para Mac
- Você deve abrir o Xcode manualmente após a instalação para que ele inclua componentes adicionais.
Se preferir não instalar o Visual Studio para Mac, o Visual Studio 2019 poderá configurar automaticamente o host de build do Mac com Xamarin.iOS e Mono. Ainda será necessário instalar e executar o Xcode. Para obter mais informações, veja Provisionamento automático do Mac.
Habilitar acesso remoto no Mac
Para configurar o host de build do Mac, primeiramente habilite o acesso remoto:
No Mac, abra as Preferências do Sistema no painel Compartilhamento.
Marque Acesso Remoto na lista Serviço.
Verifique se ele está configurado para permitir o acesso a Todos os usuários ou se o nome de usuário ou grupo do Mac está incluído na lista de usuários permitidos.
Se solicitado, configure o firewall do macOS.
Se tiver definido o firewall do macOS para bloquear conexões de entrada, poderá ser preciso permitir ao
mono-sgen
receber conexões de entrada. Um alerta será exibido para avisá-lo, se for o caso.Se estiver na mesma rede que o computador Windows, o Mac deverá ser detectável pelo Visual Studio 2019. Se o Mac ainda não estiver detectável, tente adicionar manualmente um Mac ou examinar o guia de solução de problemas.
Conectar ao Mac por meio do Visual Studio 2019
Agora que o acesso remoto está habilitado, conecte o Visual Studio 2019 ao Mac.
No Visual Studio 2019, abra um projeto iOS existente ou crie um novo escolhendo Arquivo > Novo > Projeto e, em seguida, selecionando um modelo de projeto do iOS.
Abra a caixa de diálogo Emparelhar com Mac.
Use o botão Emparelhar com Mac na barra de ferramentas do iOS:
Ou selecione Ferramentas > iOS > Emparelhar com Mac.
A caixa de diálogo Emparelhar com Mac exibe uma lista de todos os hosts de build disponíveis do Mac conectados anteriormente e atualmente:
Selecione um Mac na lista. Clique em Conectar.
Insira seu nome de usuário e sua senha.
Na primeira vez que se conectar a um Mac, você precisará inserir seu nome de usuário e senha do computador:
Dica
Ao fazer logon, use seu nome de usuário do sistema em vez do nome completo.
O Emparelhar com Mac usa essas credenciais para criar uma conexão SSH com o Mac. Se tiver êxito, uma chave será adicionada ao arquivo authorized_keys no Mac. As conexões subsequentes com o mesmo Mac farão logon automaticamente.
O Emparelhar com Mac configura automaticamente o Mac.
Desde a versão 15.6 do Visual Studio 2019, o Visual Studio 2019 instala ou atualiza o Mono e o Xamarin.iOS em um host de build conectado do Mac conforme necessário (observe que o Xcode ainda deve ser instalado manualmente). Para obter mais informações, veja Provisionamento automático do Mac.
Procure o ícone de status de conexão.
Quando o Visual Studio 2019 é conectado a um Mac, o item do Mac na caixa de diálogo Emparelhar com Mac exibe um ícone que indica que ele está conectado no momento:
Pode haver apenas um Mac conectado por vez.
Dica
Clicar com o botão direito do mouse em qualquer Mac na lista Emparelhar com Mac exibe um menu de contexto que permite Conectar..., Esquecer este Mac ou Desconectar:
de
Se escolher Esquecer este Mac, suas credenciais para o Mac selecionado serão esquecidas. Para reconectar-se ao Mac, você precisará inserir novamente seu nome de usuário e senha.
Se tiver feito o emparelhamento com êxito a um host de build do Mac, você estará pronto para criar aplicativos Xamarin.iOS no Visual Studio 2019. Consulte o guia Introdução ao Xamarin.iOS para Visual Studio.
Se ainda não tiver feito o emparelhamento com um Mac, tente adicionar manualmente um Mac ou consulte o guia de solução de problemas.
Adicionar um Mac manualmente
Se não vir um Mac específico listado na caixa de diálogo Emparelhar com Mac, adicione-o manualmente:
Localize o endereço IP do Mac.
Abra Preferências > do Sistema Compartilhando > Logon Remoto em seu Mac:
Como alternativa, use a linha de comando. No Terminal, execute este comando:
$ ipconfig getifaddr en0 196.168.1.8
Dependendo de sua configuração de rede, talvez seja necessário usar um nome de interface diferente de
en0
. Por exemplo:en1
,en2
, etc.
Na caixa de diálogo Emparelhar com Mac do Visual Studio 2019, selecione Adicionar Mac...:
Insira o endereço IP do Mac e clique em Adicionar:
Insira o nome de usuário e a senha para o Mac:
Dica
Ao fazer logon, use seu nome de usuário do sistema em vez do nome completo.
Clique em Logon para conectar o Visual Studio 2019 ao Mac via SSH e adicioná-lo à lista de computadores conhecidos.
Provisionamento automático do Mac
A partir do Visual Studio 2019 versão 15.6, o Emparelhamento com Mac provisiona automaticamente um Mac com o software necessário para criar aplicativos Xamarin.iOS: Mono, Xamarin.iOS (a estrutura de software, não o IDE Visual Studio para Mac) e várias ferramentas relacionadas ao Xcode (mas não o próprio Xcode).
Importante
- O Emparelhar com Mac não instala o Xcode. É necessário instalá-lo manualmente no host de build do Mac. Ele é necessário para o desenvolvimento do Xamarin.iOS.
- O provisionamento automático do Mac exige que o acesso remoto esteja habilitado no Mac, e o Mac deve ser acessível pela rede para o computador Windows. Consulte Habilitar acesso remoto no Mac para obter mais detalhes.
- O provisionamento automático do Mac requer 3 GB de espaço livre no Mac para instalar o Xamarin.iOS.
O Emparelhar com Mac executa instalações/atualizações de software necessárias quando o Visual Studio 2019 está se conectando ao Mac.
Mono
O Emparelhar com Mac fará a verificação para certificar-se de que o Mono está instalado. Se não estiver instalado, o Emparelhar com Mac baixará e instalará a versão estável mais recente do Mono no Mac.
O progresso é indicado por vários prompts, conforme mostrado pelas seguintes capturas de tela (clique para ampliar):
Mono | Verificação de instalação | Baixando | Instalando o |
---|---|---|---|
Xamarin.iOS
O Emparelhar com Mac faz upgrade do Xamarin.iOS no Mac para corresponder à versão instalada no computador Windows.
Importante
O Emparelhar com Mac não fará o downgrade do Xamarin.iOS no Mac de alfa/beta para estável. Se tiver o Visual Studio para Mac instalado, defina seu canal de versão da seguinte maneira:
- Se for usar o Visual Studio 2019, selecione o canal de atualizações Estável no Visual Studio para Mac.
- Se for usar o Visual Studio 2019 Preview, selecione o canal de atualizações Alfa no Visual Studio para Mac.
O progresso é indicado por vários prompts, conforme mostrado pelas seguintes capturas de tela (clique para ampliar):
Xamarin.iOS | Verificação de instalação | Baixando | Instalando o |
---|---|---|---|
Licença e ferramentas Xcode
O Emparelhar com Mac também fará a verificação para determinar se o Xcode foi instalado e se a licença foi aceita. Embora o Emparelhar com Mac não instale o Xcode, ele solicita a aceitação da licença, conforme mostrado nas seguintes capturas de tela (clique para ampliar):
Xcode | Verificação de instalação | Aceitação da licença |
---|---|---|
Adicionalmente, o Emparelhar com Mac instalará ou atualizará vários pacotes distribuídos com o Xcode. Por exemplo:
- MobileDeviceDevelopment.pkg
- XcodeExtensionSupport.pkg
- MobileDevice.pkg
- XcodeSystemResources.pkg
A instalação desses pacotes ocorre rapidamente e sem um prompt.
Observação
Essas ferramentas são diferentes das ferramentas de linha de comando do Xcode, que, a partir do macOS 10.9, são instaladas com o Xcode.
Solução de problemas do provisionamento automático do Mac
Se tiver problemas para usar o provisionamento automático do Mac, examine os logs do IDE do Visual Studio 2019, armazenados em %LOCALAPPDATA%\Xamarin\Logs\16.0. Esses logs podem conter mensagens de erro para ajudá-lo a melhor diagnosticar a falha ou obter suporte.
Crie aplicativos do iOS da linha de comando do Windows
O Emparelhar com Mac dá suporte à criação de aplicativos Xamarin.iOS da linha de comando. Por exemplo:
C:\samples\App1>msbuild App1.sln /p:ServerAddress=10.211.55.2 /p:ServerUser=xamUser /p:Platform=iPhoneSimulator /p:ServerPassword=mypassword
Os parâmetros passados para msbuild
no exemplo acima são:
-
ServerAddress
– o endereço IP do host de build do Mac. -
ServerUser
– o nome de usuário a ser usado ao fazer logon no host de build do Mac. Use seu nome de usuário do sistema em vez do nome completo. -
ServerPassword
– a senha a ser usada ao fazer logon no host de build do Mac.
Observação
O Visual Studio 2019 armazena msbuild
no seguinte diretório: C:\Arquivos de Programas (x86)\Microsoft Visual Studio\2019\<Version>\MSBuild\Current\Bin
Na primeira vez em que o Emparelhar com Mac fizer logon em um determinado host de build do Mac usando o Visual Studio 2019 ou a linha de comando, ele configurará chaves SSH. Com essas chaves, logons futuros não exigirão um nome de usuário ou senha. As chaves recém-criadas são armazenadas em %LOCALAPPDATA%\Xamarin\MonoTouch.
Se o parâmetro ServerPassword
for omitido de uma invocação de build da linha de comando, o Emparelhar com Mac tentará fazer logon no host de build do Mac usando as chaves SSH salvas.
Resumo
Este artigo descreveu como usar o Emparelhar com Mac para conectar o Visual Studio 2019 a um host de build do Mac, permitindo que os desenvolvedores do Visual Studio 2019 criem aplicativos do iOS nativos com o Xamarin.iOS.