() translation by (you can also view the original English article)
Provisionar um aplicativo para teste em um dispositivo físico ou para distribuição na App Store pode ser um pesadelo para iniciantes. Porém, todo desenvolvedor iOS tem de enfrentar este obstáculo em algum momento. Neste artigo, eu lhe darei uma boa explicação de como provisionar um aplicativo para teste em um dispositivo físico.
Este tutorial cobre dois cenários:
- implantar um aplicativo com um Apple ID gratuito
- implantar um aplicativo como um membro da Programa para Desenvolvedor Apple
Introdução
Em 2015, a Apple renovou sua oferta ao desenvolvedor. Duas alterações em particular valem a pena apontar.
No passado, a Apple tinha programas separados para desenvolvedores OS X, iOS e Safari. Este não é mais o caso. Com o lançamento do watchOS e tvOs, a Apple juntou os programas para desenvolvedor existentes em um único programa, o Programa para Desenvolvedor Apple.
Isso significa que você não precisa assinar múltiplos programas se você quer desenvolver para OS X e iOS. Se você assinar o Programa para Desenvolvedor Apple, você pode desenvolver para OS X, iOS, watchOS, tvOS e Safari.
Outra alteração significante refere-se a oferta gratuita para o desenvolvedor Apple. No passado, era possível criar uma conta de desenvolvedor gratuita. Com uma dessas contas, entretanto, você não era capaz de implantar um aplicativo iOS em um dispositivo físico.
Esta restrição agora foi retirada. Qualquer um com um Apple ID pode iniciar o desenvolvimento para as plataformas da Apple e pode implantar aplicativos em dispositivos físicos. Isto é uma noticia muito boa para qualquer um interessado em desenvolver para uma das plataformas da Apple.
Se você tem planos para publicar um aplicativo em uma das App Stores da Apple, então você precisa assinar o Programa para Desenvolvedor Apple. Isto é algo que nós discutimos no artigo anterior desta serie.
1. Apple ID
Implantar um aplicativo em um dispositivo físico com um Apple ID é simples. Mas tenha em mente que os tipos de aplicativos que você pode implantar com um Apple ID gratuito são limitados em certa medida. Eu recomento que você de uma olhada no overview da Apple se você quer saber mais sobre quais são possíveis e quais não são.
Vamos ver quais passo estão envolvidos em rodar um aplicativo iOS em um iPhone ou iPad com um Apple ID gratuito. Se você não tem um Apple ID, então eu sugiro que você crie um no site da Apple antes de continuar com este tutorial. Leva apenas alguns minutos para criar um.
Passo 1: Registrar como um desenvolvedor
Visite o site de desenvolvedor da Apple e clique no Member Center na parte superior. Após logar com seu Apple ID, você será perguntado se concorda com o Acordo de Desenvolvedor da Apple. Leia o acordo, marque o checkbox se você concordar e clique em Submit. Agora você é um desenvolvedor Apple registrado.
Passo 2: Criar um projeto
Abra o Xcode e crie um projeto como fizemos no artigo anterior. Eu escolhi pelo template Single View Application e configurei o projeto como mostrado abaixo. Informe ao Xcode onde você deseja gravar os arquivos do projeto e clique em Create.



Passo 3: Adicione uma conta
Após criar o projeto, o Xcode mostra a você a aba General de seu projeto. Na seção Identity, o Xcode nos avisa que não podemos rodar o aplicativo em um dispositivo. O aviso na parte de baixo da seção Identity nos diz que o Xcode é incapaz de encontrar um código de identificação de assinatura e o Team está definido como None. Você pode corrigir isto facilmente, logando com seu Apple ID.



Selecione Xcode na barra de menu e escolha Preferences... para abrir a janela de preferências do Xcode.



Se você abrir a aba Accounts, poderá ver que não há contas listadas.



Clique no botão mais no canto inferior esquerdo e escolha Add Apple ID... na lista de opções.



Entre com seu Apple ID e senha na caixa de dialogo e clique em Add. Se não funcionar, certifique-se que primeiro se registrou como um desenvolvedor Apple, como mostrei anteriormente. Se funcionar a adição do seu Apple ID, então ele deve aparecer na lista de contas do lado esquerdo.



Passo 4: Atualizar Team
Feche a janela de preferências e volte à aba General do seu projeto. Na seção Identify, defina o Team com a conta que acabou de criar. Mesmo que você tendo especificado um team, o Xcode continuará a mostrar um aviso.



Espere um segundo? Porque não tentamos clicar no botão Fix Issue. Há uma razão para isso estar lá. Certo? Se você clicar no botão Fiz Issue, o Xcode irá cuidar dos detalhes para se certificar de que você possa executar o aplicativo em um dispositivo físico.
Passo 5: Confiar no desenvolvedor
Se você tentar rodar o aplicativo em seu dispositivo, você ainda terá problemas. Você também ve o dialogo abaixo?



O Xcode nós mostra um bela mensagem de erro enigmática e isto me custou alguns minutos até descobrir o que estava acontecendo. Se você olhar para seu dispositivo, então você verá que o aplicativo foi instalado. Se tocar no icone para inicia-lo, você irá descobrir qual é o problema. O sistema operacional nós dirá que o aplicativo vem de um desenvolvedor não confiável.



Felizmente, o sistema operacional nos dá uma dica. Abra o Ajustes do dispositivo e navegue para Geral > Perfis. Selecione o perfil com seu Apple ID e toque em Confiar "<Apple ID>". Escolha Confiar na caixa de dialogo que aparecerá no final do processo. Agora você é ser capaz de rodar o aplicativo em seu dispositivo.



Lembre-se, que se você deletar todos os aplicativos de um desenvolvedor, você precisará "confiar" no desenvolvedor novamente.
2. Programa para Desenvolvedor Apple
Se você escolheu se escrever no Programa para Desenvolvedor Apple, então os passo que você precisa para o fornecimento de um aplicativo são diferentes. A vantagem é que a restrições impostas ao desenvolvedor gratuito estarão ausentes para um membro do Programa para Desenvolvedor Apple. A primeira coisa que você precisar criar é um certificado de desenvolvimento.
Passo 1: Criar uma Solicitação de Certificado de Assinatura
Um certificado é um documento eletrônico que liga sua identidade digital com outra informação, tal como seu nome, email e informações da organização. Um certificado de desenvolvedor consiste em uma chave privada secreta e uma chave pública compartilhada. Se você conhecer de certificados SSL para segurança de sites, então você provavelmente já sabe o que é um certificado e como ele trabalha.
O Xcode usa a chave privada do seu certificado para assinar de forma criptográfica o binário do seu aplicativo. Para obter um certificado de desenvolvedor, você primeiro precisa criar uma solicitação de certificado de assinatura ou CSR(em inglês).
Você pode criar um CSR usando o utilitário Acesso às Chave do OS X, que é achado na pasta Aplicativos > Utilitários. Abra o menu Acesso às chaves, selecione Assistente de Certificados e escolha Solicitar um Certificado de uma Autoridade de Certificado...
Preencha o formulário, digitando seu nome e o endereço de e-mail com o qual você se inscreveu para o Programa para Desenvolvedor Apple. Deixe o endereço de email da autoridade do certificado (CA Email) em branco e certifique-se de marcar Salvar no disco para salvar o CSR em sua máquina. Deixe Permitir que eu especifique as informações do par de chaves desmarcado.



Clique em Continuar, especifique a localização para salvar o CSR e clique em Salvar. Navegue até o local que você especificou para ter certeza que o CSR foi gerado. Em Acesso às chaves, embaixo da categoria Chaves, você pode ver que a chave privada e publica foi acionada para seu login.



Passo 2: Criar um certificado de desenvolvedor
Abra o navegador e vá ao site de desenvolvedor da Apple. Clique em Member Center na parte superior, logue com sua conta de desenvolvedor e escolha Certificates, Identifiers & Profiles.



Na próxima pagina, selecione Certificates na seção iOS Apps.



Clique no botão mais na canto superior direito para adicionar um novo certificado. Na lista de opções, escolha iOS App Development. Este é o tipo de certificado que estamos interessados. Clique em Continue no parte inferior.



A próxima pagina descreve os passos para criar um CSR. Como já temos um, você pode clicar em Continue na parte inferior.



Faça o upload do CSR e clique em Generate na parte inferior.



É isso. Clique no botão Download para baixo o certificado de desenvolvimento. Após baixar o certificado de desenvolvimento, de um duplo clique nele para instalar no Acesso às chaves. Certifique-se de fazer backup do certificado, porque você não vai querer perdê-lo.



Se o Acesso às chaves solicitar para você adicionar o certificado à seu conjunto de chaves login, então você pode clicar com segurança no Add.



No Acesso ás chaves, selecione Meus Certificados na esquerda e localize o certificado que você adicionou para ter certeza que ele foi instalado corretamente.



Passo 3: Adicionar um dipositivo
Você não pode rodar um aplicativo iOS em qualquer dispositivo. Você precisa especificar quais dispositivos podem rodar seus aplicativos iOS, marcando um ou mais dispositivos para desenvolvimento no portal do desenvolvedor.
Navegue para a seção Certificates, Identifiers & Profiles do portal do desenvolvedor, selecione a aba Devices na seção iOS Apps e clique no botão mais no canto superior direito. Para registrar um dispositivo, entre com um nome para o dispositivo e seu UDID. O UDID é um identificador único para seu dispositivo iOS. Note que o UDID não é o serial do dispositivo.



Você pode achar o UDID de um dispositivo conectando ele em sua máquina, abrindo o Xcode e escolhendo Devices no menu Window. Os quarenta caracteres depois do Identifier é o UDID do dispositivo.



Passo 4: Criar um App ID
Um App ID é um identificador único para um aplicativo iOS. É muito parecido com o UDID do dispositivo, que é um identificador único do dispositivo. O App ID é usado pelo sistema operacional por razões de segurança e ele é um componente essencial do Push Notification da Apple e os serviços do iCloud, entre outros.
O Apple ID de um aplicativo consiste no seu bundle identifier do aplicativo prefixado com um ID único com dez dígitos gerados pela Apple. O que é um bundle identifier? Lembre do primeiro projeto que você criou no tutorial anterior. Mesmo eu não cobrindo o bundle identifier com detalhe, implicitamente foi especificado um bundle identifier para seu projeto, dando um nome a seu aplicativo e especificando um organization identifier.
Por padrão, o bundle identifier é o nome do aplicativo prefixado com o organization identifier do projeto. Você pode alterar o bundle identifier para o que você quiser. É recomendado adotar a notação do nome do domínio invertido, por exemplo, com.tutsplus.my-first-application. O App ID então ficaria xxxxxxxxxx.com.tutsplus.my-first-application.
Para criar um novo App ID no portal do desenvolvedor, navegue para a seção Certificates, Identifiers & Profiles, clique em iOS Apps e escolha App IDs no menu da esquerda. Para criar um novo App ID, clique no botão mais no canto superior direito.
Comece dando a seu App ID um nome descritivo que você possa acha-lo posteriormente. Deixe o campo App ID Prefix intocado. Na seção App ID Suffix, entre com o identifier bundle de seu aplicativo. Certifique que você colocou ele na seção chamada Explicit App ID.



Você também pode optar por um Wildcard App ID e substituir o nome do aplicativo no bundle identifier com um asterisco, por exemplo com.tutsplus.*. Isso é útil se você pretende criar uma conjunto de aplicativos que precisam compartilhar chaves de acesso ou não requerem chaves de acesso em tudo. O carácter asterisco ou curinga precisa ser o último componente do bundle identifier.
Passo 5: Criar um Provisioning Profile
Com o certificado de desenvolvimento e o App ID no lugar, é hora de criar um provisioning profile para seu aplicativo. Antes de começar, pode ser útil explicar o que é um provisioning profile, por que isso é algo confuso para a maioria dos novos desenvolvedores iOS.
A documentação da Apple define um provisioning profile como "uma coleção de ativos que vincula exclusivamente desenvolvedores e dispositivos iOS a uma Equipe de Desenvolvimento autorizado e permite um dispositivo a ser usado para o teste". Em outras palavras, um provisioning profile contém a informação que o sistema operacional precisa para verificar se um aplicativo pode rodar em um dispositivo específico. Isto implica que o provisioning profile precisa ser instalado em cada dispositivo em que o aplicativo precise rodar.
Vamos criar um provisioning profile para seu aplicativo. Na seção Certificates, Identifiers & Profiles do portal do desenvolvedor, selecione a aba Provisioning Profiles na seção iOS Apps. Clique no botão mais no canto superior direito para criar um novo provisioning profile. Selecione iOS App Development na seção Development e clique em Continue.



No próximo passo, selecione o App ID que você criou a alguns minutos atrás e clique em Continue.



Selecione o certificado de desenvolvimento na lista de certificados para associar o novo provisioning profile com o certificado correto. Clique em Continue.



Agora você precisa selecionar os dispositivos que você quer ligar ao seu provisioning profile. Lembre-se que apenas estes dispositivos serão habilitados a rodar seu aplicativo durante o desenvolvimento.



De a seu provisioning profile um nome descritivo para você poder acha-lo facilmente mais tarde. Clique em Generate e baixe o provisioning profile para sua máquina de desenvolvimento. De um duplo clique no provisioning profile para adiciona-lo ao Xcode.



Se você desejar adicionar mais dispositivos a um provisioning profile existente, então você pode editar o provisioning profile. Tudo que você precisa fazer é baixar o novo provisioning profile e instala-lo com todos os dispositivos que você deseja usar para teste. Em outros palavras, você não precisa criar um novo provisioning profile toda vez que você for adicionar ou remover um dispositivo.
Passo 6: Configurar o projeto
Antes que você poder compilar e executar o aplicativo em seu aparelho, você precisa atualizar as configurações de compilação do projeto em seu Xcode.
Abra o projeto que você criou no tutorial anterior no Xcode e selecione o projeto no Project Navigator na esquerda. Selecione My First Application na seção Targets e abra o Build Settings na parte superior.



Não se assuste com as inúmeras configurações de compilação. Percorra a lista e procure pela seção Code Signing. Nesta seção, procure pela subseção Code Signing Identity e defina a configuração Debug para iOS Developer. Ele geralmente está localizado com o título Automatic.



Passo 7: Compilar e executar
Se você seguiu os passos acima, então agora você deve poder criar e executar o aplicativo em seu dispositivo. Antes de você rodar o aplicativo, certifique-se que definiu corretamente o active scheme e destination como mostrado abaixo.



3. Adicionar uma conta de desenvolvedor
Com relação à aplicação de provisioning, o Xcode pode fazer o trabalho pesado para você. Para este trabalho, você precisa adicionar sua conta de desenvolvedor ao Xcode. Você pode adicionar sua conta de desenvolvedor selecionando Preferences... no menu Xcode e abrindo a aba Accounts.






Clique no botão mais na canto inferior esquerdo e escolha Add Apple ID... na lista de opções. Entre com suas credenciais e clique em Add.



Adicionando sua conta de desenvolvedor ao Xcode, ele pode se comunicar com o portal de desenvolvedor em seu nome. Isso facilita muito algumas tarefas.
Conclusão
Criar e gerenciar certificados, provisioning profiles, App IDs e testar em dispositivos pode ser um tarefa difícil e é para a maioria dos desenvolvedores. Eu acredito que este artigo tenha lhe dado um forte alicerce.
Não hesite em ler este artigo varias vezes para realmente entender como as diferentes peças se encaixam. Ele vai tornar questões relacionadas a configuração mais fáceis e te garanto que você vai encontrar tais questões em algum ponto em sua carreira de desenvolvimento de iOS.
Se você tiver alguma questão ou comentário, você pode deixar-los nos comentários abaixo ou me procure no Twitter.
Seja o primeiro a saber sobre novas traduções–siga @tutsplus_pt no Twitter!