(Cuidado, tráfego sob o corte)Preparar e distribuir um aplicativo iOS em uma empresa não é uma tarefa fácil, especialmente quando o aplicativo é gravado no Windows usando o Visual studio, e a maioria dos tutoriais na Internet descreve o MacOS usando o Xcode exclusivamente. No entanto, após horas de batalha com a ideia da Apple, conseguimos realizar o que parecia impossível:
cruzar uma girafa com um rinoceronte para montar o aplicativo Xamarin IOS no arquivo Xcode, imediatamente no MacOS, depois de obtermos os arquivos necessários para distribuição e, finalmente, criar um link onde o aplicativo será distribuído.
Sim, não é muito difícil de ouvir. No entanto, quando se trata de desenvolver aplicativos para dispositivos Apple, tudo se torna várias vezes incompreensível e complicado. E após uma vitória triunfante, mas difícil, queríamos deixar nossa marca na história escrevendo este tutorial.
Pré-requisitos:1. Deve haver uma conta da Apple Enterprise - US $ 299 por ano.
1 passo. Crie um certificado.
1. Primeiro, em um Mac, você precisa criar uma solicitação para criar um certificado. Para fazer isso, abra o acesso ao chaveiro, por exemplo, através de uma pesquisa:


2. Selecione o acesso ao chaveiro no canto superior esquerdo da tela, selecione "assistente de certificado" -> "solicitar um certificado de uma autoridade de certificação" no menu pop-up, a janela correspondente será aberta:


3. Na janela exibida, preencha os campos "Endereço de email do usuário" - seu email e "Nome comum" - o nome da chave. E também selecione a opção "Salvo em disco" para salvar o arquivo de solicitação no computador. E pressione o botão "Continuar":

4. Em seguida, aparecerá uma janela na qual você precisará especificar o nome do arquivo de solicitação e selecionar o caminho para salvar o arquivo. Fazemos as alterações necessárias e salvamos:

5. Após salvar com êxito, a seguinte janela será exibida. Clique em "Concluído":

6. Depois podemos ver que o arquivo de solicitação foi criado no local de salvamento (neste exemplo, na área de trabalho). Ou podemos ver a chave criada na lista de chaves em "acesso às chaves":


7. Em seguida, precisamos criar um certificado, podemos fazer isso no site da
Apple para desenvolvedores fazendo login em nossa conta:



8. Após um login bem-sucedido, vamos para "Certificados, IDs e perfis", também na página de certificados, para garantir que "IOS, tvOS, watchOS" esteja selecionado:


9. Em seguida, na página, na seção "Certificados", selecione "Produção":

10. Na página, clique no botão com a imagem “+” para criar um certificado. Uma página aparece na qual você precisa selecionar o tipo de certificado a ser criado:


11. Neste exemplo, estamos interessados no método de distribuição interno, portanto, selecione “Interno e Ad Hoc” como o tipo de certificado. Depois de clicar no botão "Continuar":

12. Depois de passarmos para a próxima página para criar um certificado, ele descreverá como criar uma solicitação de certificado do MacOS. Já criamos essa solicitação nos parágrafos anteriores. Pressione o botão "Continuar":

13. Na próxima etapa, você precisará baixar o arquivo de solicitação que criamos anteriormente na área de trabalho. Após um download bem-sucedido, clique em "Continuar":


14. Depois disso, o certificado será gerado e, na página seguinte, poderá ser baixado no computador:

15. Faça o download do certificado, neste exemplo, para a área de trabalho. Também podemos ver o certificado criado no site:


Como podemos ver, no final, recebemos com sucesso um certificado. O próximo passo é criar um ID do aplicativo.
2 Etapa. Crie ID de aplicativos.
Na etapa anterior, criamos o certificado com sucesso, agora precisamos criar o ID do aplicativo. Para fazer isso, você precisa:
1. No site da
Apple para desenvolvedores , em sua conta, vá primeiro para "Certificados, IDs e perfis", também na página de certificados, para garantir que "IOS, tvOS, watchOS" esteja selecionado:


2. Em seguida, na página, na seção "Identificadores", você precisa selecionar "IDs do aplicativo":


3. Na página, clique no botão com a imagem "+" para criar o ID do aplicativo. Uma página aparece na qual você precisa selecionar as configurações para o ID criado. As configurações de ID são individuais para o seu aplicativo, o único esclarecimento importante é que, na coluna App ID do Sufixo, você precisa selecionar o Explicit App ID:


4. Após criar o ID do aplicativo, ele pode ser visto no site:

Como resultado de duas etapas, recebemos um certificado e criamos um ID do aplicativo. Em seguida, precisamos criar perfis de provisionamento usando o certificado criado. E isso nos leva ao próximo passo, “3º passo. Criando perfis de provisionamento. ”
3 Etapa. Criação de perfis de provisionamento.
Na etapa anterior, criamos o certificado com sucesso, agora precisamos criar perfis de provisionamento com ele. Para fazer isso, você precisa:
1. No site da
Apple para desenvolvedores , em sua conta, vá primeiro para "Certificados, IDs e perfis", também na página de certificados, para garantir que "IOS, tvOS, watchOS" esteja selecionado:


2. Em seguida, na página, na seção "Perfis de provisionamento", selecione "Distribuição":


3. Na página, clique no botão com a imagem “+” para criar os perfis de provisionamento. Uma página aparece na qual você precisa selecionar o tipo de perfil a ser criado:

4. Neste exemplo, estamos interessados no método de distribuição interno, respectivamente, selecione o tipo de perfil "interno" e clique no botão "continuar":

5. Na página seguinte, selecione o ID do aplicativo criado anteriormente na etapa 2:

6. Depois de clicar no botão "Continuar", procederemos à seleção do certificado, criamos na etapa 1. Em seguida, clique no botão "Continuar":

7. Na próxima página, precisamos preencher o campo com o nome do perfil e verificar os dados antes de gerar o perfil:

8. Depois que o perfil é gerado e pode ser baixado:

9. Faça o download do perfil de provisionamento, neste exemplo, para a área de trabalho. Também podemos ver o perfil de provisionamento criado no site e ver se ele está ativo:


Após os resultados de três etapas, criamos com sucesso o perfil de provisionamento.
4 Etapa. Criando arquivos Xcode (.xcarchive) com base no seu aplicativo no Visual Studio no Windows e, em seguida, criando arquivos .ipa e .plist
As etapas anteriores foram executadas em um computador da Apple (Mac); depois, mostrarei como criar .xcarchive no Visual Studio 2017 para Windows, imediatamente em um Mac.
1. Para fazer isso, precisamos do aplicativo Xamarin no Visual Studio, que será conectado ao Mac:

2. Na solução, você precisa selecionar o projeto IOS clicando com o botão direito do mouse. No menu exibido, selecione "Propriedades". Na janela que se abre, selecione "Configuração do pacote ios". Em seguida, selecione na "configuração de pacote configurável" - "provisionamento manual" e, abaixo, na coluna "provisionamento manual", selecione seu certificado e perfil que criamos nas etapas anteriores:


3. No projeto IOS, selecione o arquivo Info.plist e verifique se o “identificador de pacote configurável” corresponde ao ID do aplicativo desejado:


4. Depois, abra a linha de comando do desenvolvedor no Visual Studio (como administrador) "Prompt de Comando do Desenvolvedor para VS 2017" e vá para o diretório com o projeto ios ou especifique o endereço completo ao criar o comando. Este comando criará um arquivo .xcarchive no Mac a partir do Visual Studio. O arquivo em si não contém os arquivos .ipa e .plist que precisamos distribuir; portanto, após a geração do arquivo, precisamos criá-los. Saiba mais sobre como criar um arquivo
aqui .
Comando: msbuild /p:Configuration=Release /p:ServerAddress=10.211.55.2 /p:ServerUser=xamUser /p:Platform=iPhone /p:ArchiveOnBuild=true /t:"Build" MyProject.csproj


5. Após a execução bem-sucedida do comando no Mac, um arquivo deve ter sido criado. Precisamos executar o Xcode, selecione "Windows" nele e selecione "Organazer" neste menu. Lá, na seção "Arquivo", veremos o arquivo .xcarchive criado:



6. Agora, precisamos criar arquivos .ipa e .plist com base no arquivo morto criado.
Com a ajuda deles, podemos distribuir nosso aplicativo ignorando a AppStore, por exemplo, dentro da empresa. Em seguida, precisamos clicar no botão "Distribuir aplicativo". No menu exibido, selecione "Empresa" e clique no botão "Avançar":

7. Em seguida, você precisa selecionar os dispositivos para os quais pode distribuir e não se esqueça de selecionar “incluir manifesto para instalação sem fio” para poder baixar o aplicativo no navegador:

8. Na próxima janela, especifique “Nome” - o nome do aplicativo; “URL do aplicativo” - caminho para o arquivo .ipa; ”URL da imagem de exibição” - Caminho para o ícone 57x57; ”URL da imagem em tamanho normal” - caminho para o ícone 512x512.
É importante que o servidor no qual os arquivos .ipa e .plist estejam localizados seja criptografado, ou seja, https seja obrigatório. O exemplo usa o serviço de
caixa de depósito . Ao usar o serviço dropbox,
é importante saber : o caminho correto para o arquivo através do link público não deve começar com "https://www.dropbox.com/", conforme indicado no link gerado, mas com "https://dl.dropboxusercontent.com/ "

9. Na próxima etapa, precisamos selecionar o certificado criado e o perfil de provisionamento:

10. Depois de vermos o aplicativo montado com sucesso, devemos escolher onde salvar a pasta com o aplicativo, que distribuiremos depois:


11. Após salvar, uma pasta foi criada na área de trabalho. Você pode ver o conteúdo da pasta nas capturas de tela abaixo, ao gerar 4 arquivos .plist e geralmente 1 .ipa, mas no aplicativo de teste isso é um pouco diferente, mas, neste caso, estaremos interessados em um arquivo cujo nome contenha apenas o nome do nosso aplicativo. Quanto aos 4 arquivos .plist, precisamos do arquivo "manifest.plist". Para instalar o aplicativo, você precisa de um plist, que descreve as propriedades de pré-instalação. Saiba mais sobre a distribuição corporativa e veja como fica o manifest.plist
aqui :



Portanto, nesta etapa, criamos com êxito os arquivos .ipa e .plist do aplicativo criado no Visual Studio 2017 e que usaremos para distribuição interna.
5 Etapa. Distribuição de aplicativos
Nas etapas anteriores, preparamos nosso aplicativo para distribuição. Nesta etapa, criaremos um arquivo html simples com o link e o colocaremos no IIS local. Isso é feito para simplificar o exemplo, mas a localização do link não importa. Link sem exemplo
pode ser colocado em seu próprio site, para que esteja disponível para os funcionários, como arquivos de aplicativos, em seu próprio servidor. No entanto, neste exemplo, como mencionado anteriormente, usamos o serviço de caixa de depósito.
1. Primeiro, precisamos colocar os arquivos (ícones, arquivo .ipa e manifest.plist) no dropbox e disponibilizá-los no link:

2. Depois de criar o arquivo html, o seguinte conteúdo:
<html> <body> <a href="itms-services://?action=download-manifest&url=https://www.yoursite.ru/dirname/manifest.plist"> Install iOS in-house App</a> </body> </html>
3. Em seguida, faça o upload desse arquivo html no IIS local (ou no seu site) e, seguindo este link em um dispositivo móvel, seremos solicitados a instalar o aplicativo. Depois de instalar o aplicativo, o usuário precisa confirmar a confiança no certificado no dispositivo
Configurações → Geral → Gerenciamento de dispositivos → "Nome da empresa" , para que apenas os usuários possam abrir o aplicativo:



Sumário
Após os resultados de 5 etapas, criamos um certificado e um Perfil de provisionamento, coletamos um arquivo Xcode do Visual Studio 2017, recebemos arquivos .ipa e .plist para distribuição e também conseguimos instalar o aplicativo com êxito no dispositivo clicando no link, ignorando a AppStore.