1 00:00:02,450 --> 00:00:09,560 Então vimos como podemos criar e implantar um aplicativo com expo no fluxo de trabalho gerenciado, o que foi bastante conveniente. 2 00:00:09,560 --> 00:00:15,770 Agora, digamos que tenhamos um aplicativo, por exemplo, criado com a React Native CLI. Aqui, eu não estou usando nenhum módulo nativo, 3 00:00:15,770 --> 00:00:21,650 mas, se estivesse, claro que eu atualizaria meus arquivos de configuração do Android e iOS para solicitar as 4 00:00:21,650 --> 00:00:27,410 permissões corretas e assim por diante e mostrei tudo isso no módulo não expo, anteriormente no curso 5 00:00:27,410 --> 00:00:27,830 . 6 00:00:28,130 --> 00:00:32,870 Então agora vamos dizer que estamos felizes com o aplicativo e queremos publicá-lo na Apple App Store e 7 00:00:32,870 --> 00:00:34,190 na Google Play Store. 8 00:00:34,190 --> 00:00:38,900 Agora, os documentos oficiais do React Native são um ótimo lugar para começar. Lá, na documentação em 9 00:00:38,930 --> 00:00:44,660 guias, você também encontra este guia em execução no dispositivo, onde pode aprender como criar seu aplicativo para iOS ou 10 00:00:45,050 --> 00:00:50,000 Android nos diferentes sistemas operacionais pode estar trabalhando. Importante, você só pode criar para iOS no 11 00:00:50,000 --> 00:00:55,190 macOS agora, o Linux e o Windows não funcionam porque agora não estamos construindo o aplicativo na 12 00:00:55,190 --> 00:01:01,250 nuvem, como fizemos com a expo, mas localmente em nossa máquina e lá, a Apple tem essa restrição: só pode 13 00:01:01,460 --> 00:01:03,730 criar aplicativos iOS em um Mac, é o 14 00:01:03,740 --> 00:01:04,580 que é. 15 00:01:05,510 --> 00:01:12,820 Portanto, agora o que você precisa agora é de uma conta de desenvolvedor da Apple, no momento não necessariamente uma paga, basta compilar o 16 00:01:12,820 --> 00:01:13,480 aplicativo, 17 00:01:13,480 --> 00:01:17,590 no entanto, se desejar, para as lojas de aplicativos, você precisa de uma 18 00:01:17,590 --> 00:01:20,950 paga, conforme mencionado anteriormente neste módulo. Portanto, você deve configurar 19 00:01:20,950 --> 00:01:27,550 uma conta Apple Developer e abrir seu projeto aqui, seu projeto iOS para ser mais preciso com o Xcode. 20 00:01:28,330 --> 00:01:35,980 Lá, você pode clicar em abrir outro projeto, entrar na pasta do projeto, na pasta iOS e selecionar essa pasta 21 00:01:35,980 --> 00:01:41,560 ou arquivo da área de trabalho do XC aqui para abri-lo com o Xcode. 22 00:01:41,620 --> 00:01:48,940 Isso abre seu projeto, seu projeto iOS, que inclui seu código React Native, é claro, no Xcode. Agora é lá que você agora configura esse aplicativo, 23 00:01:48,990 --> 00:01:53,810 onde configura seu identificador, por exemplo, é esse URL inverso sobre o qual 24 00:01:53,870 --> 00:02:02,910 eu estava falando que poderia ser com. academind. teste rn-no expo, algo como isto, onde você 25 00:02:02,910 --> 00:02:08,330 define um número de versão que seus usuários verão e seu número de compilação que 26 00:02:08,330 --> 00:02:13,280 pode ser simplesmente um número que você incrementa aqui, onde você deve escolher gerenciar 27 00:02:13,280 --> 00:02:20,320 automaticamente a assinatura e onde agora precisa escolher uma equipe que deve ser mostrada aqui; se não adicionar uma conta, 28 00:02:20,320 --> 00:02:26,350 faça login com o seu ID Apple para adicionar sua conta de desenvolvedor da Apple como uma 29 00:02:26,350 --> 00:02:31,360 conta aqui e, posteriormente, você poderá escolher sua equipe aqui, a qual será necessária 30 00:02:31,360 --> 00:02:32,830 automaticamente assinar o 31 00:02:32,830 --> 00:02:38,970 aplicativo, que será feito pela Apple, por assim dizer. Em geral, você pode configurar seu aplicativo aqui, é claro, e prepará-lo para implantação, 32 00:02:39,010 --> 00:02:44,640 e uma configuração importante está relacionada aos ícones que você deseja usar. Na expo, configuramos os ícones 33 00:02:44,650 --> 00:02:50,430 convenientemente em uma configuração e a expo gerou todos os ícones para nós. 34 00:02:50,470 --> 00:02:52,410 Agora não funcionará dessa 35 00:02:52,480 --> 00:02:59,650 maneira, agora você precisa configurar esses ícones por conta própria e fazer isso clicando nesta seta aqui que 36 00:02:59,650 --> 00:03:06,570 leva ao catálogo de ativos e agora você pode fornecer ícones e fornecer ícones em tamanhos 37 00:03:06,570 --> 00:03:09,050 diferentes aqui, como você pode ver. 38 00:03:09,270 --> 00:03:11,610 Agora, obviamente, isso foi conveniente pela expo, ele criou 39 00:03:11,610 --> 00:03:17,690 esses ícones para você e você não precisou criar manualmente todos esses ícones. Anexado no entanto, você 40 00:03:17,690 --> 00:03:22,550 encontra ícones. arquivo zip que inclui ícones que 41 00:03:22,550 --> 00:03:29,740 você pode arrastar e soltar aqui, então é isso que vou fazer agora e os ícones são rotulados de modo que 42 00:03:29,740 --> 00:03:35,560 fique claro o que você deve arrastar para onde e com isso, você configurou os ícones. 43 00:03:35,750 --> 00:03:40,790 Você também pode configurar a tela de inicialização, para isso você pode expandir esta 44 00:03:40,790 --> 00:03:48,610 pasta e encontrar esse arquivo zip da tela de inicialização. No final, isso permite que você personalize sua tela de 45 00:03:48,610 --> 00:03:55,660 inicialização, onde você pode adicionar novos widgets, arrastar imagens para ela, alterar o texto, veja aqui por exemplo e 46 00:03:55,660 --> 00:04:01,920 configurar a tela de inicialização em geral. É claro que você pode aprender mais sobre isso nos documentos 47 00:04:01,920 --> 00:04:09,700 do Xcode e, depois de configurar tudo isso, é possível criar seu aplicativo aqui. Para isso, você também pode, por exemplo, testá-lo em um 48 00:04:09,700 --> 00:04:14,710 simulador, escolhendo uma versão do simulador e, em seguida, clicando no botão play aqui e 49 00:04:14,710 --> 00:04:19,920 agora ele criará seu aplicativo e executará em um simulador. Depois, é claro, também desdobramento, desenvolvimento. 50 00:04:19,930 --> 00:04:27,840 Vamos ver se tudo funciona agora. Ele lança esse processo de empacotador que você já viu anteriormente para esse aplicativo 51 00:04:27,850 --> 00:04:33,630 independente, porque é claro que ainda faz parte da experiência de desenvolvimento aqui. 52 00:04:33,700 --> 00:04:42,070 Ele ainda é um aplicativo React Native, depois de tudo o que você usa para criar esse aplicativo nativo e agora isso foi bem-sucedido, e o 53 00:04:42,100 --> 00:04:44,140 aplicativo é iniciado em um simulador. 54 00:04:44,140 --> 00:04:49,270 Agora, não estou muito interessado no aplicativo lá, porque só tenho um aplicativo muito básico lá 55 00:04:49,270 --> 00:04:53,370 que não faz nada sofisticado, mas isso prova que a construção funciona. 56 00:04:53,480 --> 00:04:57,970 Agora, nos documentos oficiais, se você rolar para baixo ainda mais nesta seção em execução 57 00:04:57,970 --> 00:05:00,030 no dispositivo, também aprenderá a criar 58 00:05:00,520 --> 00:05:05,510 seu aplicativo para produção, se for um aplicativo não-expo, e agora temos duas coisas importantes a fazer. 59 00:05:05,530 --> 00:05:10,900 A primeira coisa importante é que, na visualização do projeto aqui, clicando nesta pasta e 60 00:05:10,900 --> 00:05:20,290 depois neste ícone aqui, você expande essa pasta e depois acessa as informações. e agora, você encontrará esta chave de configurações de segurança 61 00:05:20,290 --> 00:05:22,820 de transporte de aplicativos. 62 00:05:22,870 --> 00:05:29,470 Esse tipo de controle controla como o iOS controla quais páginas da Web ou servidores da Web seu aplicativo 63 00:05:29,470 --> 00:05:35,470 pode falar e, por padrão, permite apenas o acesso a servidores https, portanto, servidores protegidos por SSL. 64 00:05:35,470 --> 00:05:39,270 Esse é um bom padrão, mas você pode ter algumas exceções que 65 00:05:39,370 --> 00:05:44,120 podem ser adicionadas aqui e uma exceção na lista de domínios de exceção é localhost. 66 00:05:44,180 --> 00:05:49,450 Agora isso é necessário para o desenvolvimento, porque o aplicativo React Native no final fala com este servidor 67 00:05:49,450 --> 00:05:51,680 de desenvolvimento aqui, que é executado no host 68 00:05:51,820 --> 00:05:55,820 local que não está usando SSL. Normalmente, o iOS bloqueia isso, agora, 69 00:05:55,900 --> 00:06:01,000 para não bloqueá-lo, isso está na lista de exceções. Para criar isso para produção, remova-o. Você pode 70 00:06:01,060 --> 00:06:02,080 simplesmente limpar 71 00:06:02,080 --> 00:06:08,230 essa chave aqui, removendo-a com a tecla Delete e pronto. É uma coisa que você deve configurar para 72 00:06:08,230 --> 00:06:15,630 implantação e, em seguida, é necessário configurar esse esquema de versão. Para isso, você deve ir para o 73 00:06:15,640 --> 00:06:24,700 esquema do produto, editar o esquema e configurá-lo em debug para liberar aqui para executar e depois fechar. 74 00:06:25,760 --> 00:06:30,470 Com isso, agora você pode executar a compilação do produto aqui para compilar seu aplicativo e agora 75 00:06:30,470 --> 00:06:35,090 ele foi criado para lançamento, criado para produção, para que seja otimizado e assim por diante. 76 00:06:35,090 --> 00:06:37,530 Portanto, isso cria seu aplicativo agora para produção. 77 00:06:38,720 --> 00:06:39,980 Agora, enquanto essa 78 00:06:39,980 --> 00:06:42,940 compilação é executada, certifique-se de que também podemos enviá-la para 79 00:06:42,950 --> 00:06:48,590 a Apple App Store e, para isso, você deve acessar sua conta de desenvolvedor da Apple e agora precisa de 80 00:06:49,550 --> 00:06:55,250 uma conta paga e agora precisa configurar um algumas coisas. Você precisa ir para certificados, IDs e perfis aqui 81 00:06:55,250 --> 00:06:58,370 e ir para identificadores e, em seguida, adicionar um novo ID 82 00:06:58,370 --> 00:07:02,140 de aplicativo, apenas isso aqui, a primeira configuração, adicionar um ID de aplicativo e 83 00:07:02,150 --> 00:07:07,690 você precisa adicionar o ID do aplicativo configurado em seu projeto, para que o ID do aplicativo, o identificador de 84 00:07:07,700 --> 00:07:14,240 pacote que você encontra aqui, esse identificador exato precise ser adicionado aqui. Você pode adicionar uma descrição, rn-demo, 85 00:07:14,240 --> 00:07:22,840 o que quiser, mas aqui você precisa adicionar esse ID. Agora você pode verificar os recursos especiais exigidos pelo seu 86 00:07:22,870 --> 00:07:26,410 aplicativo e os que não o meu 87 00:07:26,410 --> 00:07:31,740 aplicativo, por isso não preciso verificar nada lá e continuar, confirme e registre-se. 88 00:07:31,750 --> 00:07:32,680 Agora isso 89 00:07:32,680 --> 00:07:36,010 é necessário, caso contrário, você não poderá publicar seu aplicativo. 90 00:07:36,040 --> 00:07:42,510 Agora, com esse ID registrado, você precisa acessar o iTunes Connect e pode simplesmente pesquisar 91 00:07:42,510 --> 00:07:48,090 no Google o que é, no final, o serviço em que você cria 92 00:07:48,090 --> 00:07:57,710 a página da loja e onde agora precisa configurar seu aplicativo. Lá, você pode acessar meus aplicativos e adicionar um novo aplicativo aqui, clicando no aplicativo mais 93 00:07:57,710 --> 00:08:06,010 novo aqui, pela maneira como você também vê o aplicativo que criamos com a expo, então clique em novo aplicativo aqui, iOS, dê um nome como RNNoExpo, que curso 94 00:08:06,160 --> 00:08:08,070 é um nome bonito que você realmente 95 00:08:08,140 --> 00:08:11,110 não gostaria de usar, mas é bom para nós aqui, 96 00:08:11,260 --> 00:08:17,600 depois escolha o idioma para o qual está construindo o aplicativo, escolha o ID do pacote e escolha o ID que você 97 00:08:17,620 --> 00:08:19,210 acabou de configurar, se 98 00:08:19,360 --> 00:08:26,060 for não aparecer ainda, volte alguns minutos depois, estará lá então. Você também pode adicionar seu próprio identificador 99 00:08:26,060 --> 00:08:32,750 personalizado, que aparecerá basicamente nas suas faturas e assim por diante, RNNoExpo, o que você quiser 100 00:08:32,750 --> 00:08:39,170 e clique em criar, e isso agora cria o aplicativo aqui no iTunes Connect. 101 00:08:39,260 --> 00:08:44,750 Também é aqui que você pode gerenciar o aplicativo para a App Store e configurá-lo, definir seus preços e 102 00:08:44,750 --> 00:08:45,910 assim por diante. 103 00:08:45,980 --> 00:08:52,870 Agora, com tudo isso pronto, vamos aguardar a conclusão da nossa compilação aqui e, se ela falhou como ocorreu comigo, 104 00:08:52,870 --> 00:08:59,220 o motivo é que você precisa configurá-la para um dispositivo iOS genérico, portanto, certifique-se de ter esse conjunto. 105 00:08:59,220 --> 00:09:03,810 Além disso, certifique-se de adicionar este teste RNWithoutExpo, você seleciona sua equipe de desenvolvimento, esse é outro 106 00:09:03,810 --> 00:09:05,170 erro que recebi aqui. 107 00:09:06,150 --> 00:09:14,510 Se você ainda estiver recebendo um erro como o meu, pressione o comando 1 aqui no Xcode, clique nas configurações de compilação 108 00:09:14,600 --> 00:09:17,020 aqui com todas essas coisas 109 00:09:19,930 --> 00:09:26,170 selecionadas como você vê aqui, na seção de links que você encontrará se rolar um pouco 110 00:09:26,180 --> 00:09:32,180 e nesse código que remove parte aqui, no release, defina isso de sim para não. 111 00:09:32,200 --> 00:09:36,280 Esta é uma solução alternativa para esse erro que parece estar relacionado aos testes automáticos configurados 112 00:09:36,280 --> 00:09:45,020 e, quando você fizer isso, tente novamente, execute a compilação mais uma vez e agora deve ter êxito. Depois que essa compilação for bem-sucedida, você poderá voltar 113 00:09:45,020 --> 00:09:49,760 ao produto e agora a opção de arquivamento estará disponível. 114 00:09:49,850 --> 00:09:56,570 Se você agora executar isso, ele arquivará seu aplicativo, que nada mais é do que criar o pacote que foi construído 115 00:09:56,570 --> 00:09:59,490 anteriormente nos servidores em nuvem da expo, então vamos 116 00:09:59,810 --> 00:10:01,340 esperar que isso termine. 117 00:10:02,490 --> 00:10:03,430 Uma vez 118 00:10:03,430 --> 00:10:08,620 feito isso, você deverá ver o seu arquivo ou arquivos, se estiver em processo mais de uma vez 119 00:10:08,620 --> 00:10:13,660 aqui e agora aqui, poderá distribuir seu aplicativo para a App Store com as configurações feitas no iTunes 120 00:10:13,660 --> 00:10:15,310 Connect e outras que mostrei anteriormente. 121 00:10:15,360 --> 00:10:20,890 Agora não vou fazer isso aqui, mas é assim que você implantaria seu aplicativo somente para o React Native sem o gerenciador de exposições.