Forums » Desenvolvimento Android

COMO SUBMETER UM APLICATIVO PARA APPLE STORE

    • 467 posts
    28 de agosto de 2014 12:57:55 ART

    COMO SUBMETER UM APLICATIVO PARA APPLE STORE

    Como novo usuário Apple, resolvi marcar os pontos e clarear os passos para publicar uma aplicação mobile para iOS, neste artigo colocarei etapas extras que cobrem a utilização do PhoneGap.

    Uma vez que você tenha desenvolvido sua aplicação, para compilar o arquivo *.ipa (via PhoneGap ou XCode), iremos precisar assinar a aplicação, envolverá uma série de etapas aonde cobriremos KeyChains, Provisioning Profiles, Certificates, Identifiers, Conversão do Certificado de .cer para .p12, iTunes Connect, Open SSL, Application Loader.

    Antes de tudo, você precisará ter uma Apple ID de desenvolvedor, e claro já ter pago e ativado a sua conta de desenvolvedor, esta conta também deve estar atribuída a uma conta do iTunes Connect.

    1. Adicionar o Certificado
    2. Adicionar App ID (Identifiers)
    3. Adicionar Provisioning Profile
    4. Converter Certificado de .cer para .p12
    5. Enviando Certificados e Provisioning Profile para PhoneGap Build.
    6. Submetendo Aplicativo para Apple Store

     

    ADICIONAR O CERTIFICADO

    Para adicionar o certificado, faça o login em developer.apple.com, no menu superior clique em Member Center, em seguida navegue para Certificates, Identifiers & Profiles e clique para adicionar um certificado:

    addCertificate

    Na tela a seguir você precisa escolher se seu aplicativo está em desenvolvimento, ou se está pronto para ser publicado, caso esteja em desenvolvimento utilize a opção em Development, para então testar em seus dispositivos. Caso você venha do phonegap build, ou já tenha seu arquivo .ipa compilado, selecione a opção inferior em Production >> App Store and Ad Hoce clique em continuar.

    addCertificatetypes

    Na página a seguir ele irá solicitar a requisição do certificado .CSR, continue…

    Para gerar a requisição de certificado, você precisará de uma chave privada e pública, isto poderá ser feito em um sistema iOS, se você está no Windows pode tentar virtualizar um OS X Mountain Lion com VMWare, ou você poderá fazer diretamente do seu macbook, ou mac pc como a seguir:

    Abra o Keychain Access, clique no menu e entre em Certificate Assistant >> Request a Certificate from a Certificate Authority, isto irá gerar uma chave pública e privada para o seu certificado.

    requestCertificate

    Insira os dados da sua conta e continue até o fim, escolha para salvar o arquivo do certificado no disco.

    requestCertificate2

    requestCertificate3

    Ao utilizar este assistente, serão criadas duas chaves pública e privada dentro de seu Keychain Access que serão utilizadas posteriormente.

    Esta requisição também pode ser feita no Windows fazendo uso do OpenSSL seguindo os passos abaixo:

    • No Windows Instale e abra o Prompt de Comando CMD.
    • Navegue para pasta bin do OpenSSL (C:\OpenSSL\bin)
    • Crie uma chave privada com o comando: openssl genrsa -out mykey.key 2048
    • Salve a chave em um lugar seguro pois você irá utilizar posteriormente, incluindo para exportar seu certificado para .p12
    • Quando utilizando OpenSSL, não ignore mensagens de erro, o menor erro em chaves criptografadas pode inutilizar o uso do mesmo, portanto atenção!
    • Crie o arquivo CSR com o comando: openssl req -new -key minhachave.key -out CertificateSigningRequest.certSigningRequest  -subj “/[email protected], CN=Pierre Maciel, C=BR”
    • Envie o arquivo CSR para terminar de gerar o Certificado no site de Desenvolvedores da Apple.

    Com a criação do arquivo CSR pareado com sua chave privada, agora você poderá voltar para o site, enviar o arquivo e gerar o certificado:

    certGenerate

    Na tela a seguir faça o Download de seu certificado ( .cer ) em um lugar seguro.

    Uma vez com seu certificado criado, agora precisaremos gerar o Provisioning Profile, mas antes, como estamos planejando Publicar este aplicativo na Apple Store, primeiro vamos adicionar um App ID, o identificador do seu aplicativo.

    ADICIONAR APP ID (IDENTIFIERS)

    Seguindo a mesma linha do iOS Certificate, entre em Identifiers e clique na seta para adicionar um App ID.

    appid1

    Insira o nome do seu aplicativo, selecione Explicit App ID, se você deseja um aplicativo dentro de um único Bundle ID (dominio reverso). Se você deseja testar vários aplicativos usando um Provisioning Profile em um mesmo domínio você poderá utilizar Wildcards, Continue e clique Submit para enviar.

    Atenção: O Bundle ID deve ser igual ao utilizado no config.xml de configuração do seu Phonegap Build ou do reverse domain especificado em seu XCode Project, ou você não conseguirá submeter sua aplicação com sucesso.

     

    appid2

    ADICIONAR PROVISIONING PROFILE

    Provisioning Profile permite você instalar o binário em devices para testes incluindo seus CertificadosApp IDs e Devices. Se você planeja utilizar serviços como Game Center, In-app Purchase, e Push Notification, você precisará na etapa anterior criar um App ID com um Bundle ID (ID de domínio reverso) único, caso você planeje um provisioning profile para testar vários aplicativos dentro de uma derivação de reverse domain utilize Wildcards (Ex.: br.com.iemobile.* ou seja, todos os aplicativos dentro desta URL reversa serão aceitos num mesmo Provisioning Profile).

    • Clique em Provisioning Profiles no site da apple, clique no + para adicionar, selecione App Store e clique Continue.
    • Selecione o App ID do seu Aplicativo e clique Continue.
    • Selecione o Certificado que foi criado na primeira etapa e  Continue.
    • Crie um nome para seu Profile e clique Generate.
    • Faça o download do seu Provisioning Profile que já está associado a um Certificado e App ID.

    Ao final você deverá conferir o status ativo do seu Provisioning Profile:

    provisionp2

    CONVERTER CERTIFICADO DE .CER PARA .P12

    Esse tipo de conversão poderá ser feito de duas formas via Windows ou Mac, a fonte aonde eu obtive muitas informações úteis foi aqui.

    Se você está num Windows:

    • Baixe e instale o OpenSSL 32bits ou 64bits (você pode precisar do Visual C++ 2008 Redistributables
    • Abra o OpenSSL
    • Cole seu certificado .cer na mesma pasta do openssl (C:\OpenSSL-Win32\bin)
    • Copie e cole o seguinte código na janela de comando: x509 -in CERTNAME.cer -inform DER -out FILENAME.pem -outform PEM
    • Substitua CERTNAME com o nome do seu certificado atual.
    • Substitua FILENAME com o nome desejado do seu certificado .PEM.
    • Clique Enter (Na mesma pasta aparecerá um novo arquivo FILENAME.pem
    • Se você estiver utilizando uma chave privada, para converter sua chave p12 para pem digite o seguinte comando: pkcs12 -nocerts -in minhachave.p12 -out minhachave.pem
    • Clique Enter
    • Agora você pode criar um arquivo válido .p12 com o seguinte comando: pkcs12 -export -inkey minhachave.key -inFILENAME.pem -out iphone_dev.p12
    • Clique Enter para efetuar a exportação.

    Se você está num Mac:

    • Abra o Keychain Access
    • Importe o certificado baixado
    • Entre em Keys ao lado esquerdo inferior
    • Clique com direito no certificado e exportar para .p12.

    convertOnIos

    ENVIANDO CERTIFICADOS E PROVISIONING PROFILE PARA PHONEGAP BUILD

    Agora nós temos os dois arquivos necessários pra enviar para compilar com sucesso seu aplicativo via Phonegap Build, não há tanto segredo aqui, apenas selecione seu aplicativo que você puxou do GitHub, na versão iOS clique para add a key e envie os respectivos arquivos. Destrave o cadeado e clique Rebuild para obter o arquivo binário e faça o download do .ipa .

    toPhonegap

    SUBMETENDO APLICATIVO PARA APPLE STORE

    Como dito anteriormente, você precisará de sua conta de desenvolvedor apropriadamente interligada a uma conta no iTunes Connect para submeter o envio.

    • Faça o Login
    • Clique em Manage Your Apps
    • Clique Add New App no topo (se você não tiver especificado um Bundle ID na etapa de App ID, não poderá prosseguir).
    • Insira os dados, SKU pode ser um identificador qualquer, eu costumo utilizar o Bundle ID.
    • Continue
    • Insira as demais descrições do seu aplicativo bem como Screenshots nos respectivos tamanhos e escolha os valores de rating que seu aplicativo deverá ter.
    • Assim que você ver seu status em Waiting For Upload, você está pronto para enviar seu arquivo binário.

    Para mais explicações sobre como preencher os dados no iTunes Connect clique aqui.

    Agora que estamos prontos para enviar o nosso binário, iremos precisar de um Mac OS rodando para utilizar o Application Loader.

    apploader

    • Abra o Application Loader
    • Clique Deliver Your App
    • Selecione o app que você criou no iTunes Connect
    • Avance
    • Selecione o arquivo .ipa baixado no seu phonegap build ou gerado no seu XCode.
    • Envie (esta etapa pode demorar)

    apploadersent

    Parabéns! Você acabou de submeter sua primeira aplicação para o iOS App Store, chatinho o processo né? confesso, eu fiquei muito confuso com tudo isso e resolvi tentar simplificar pra mim e pra vocês.

    Esta é uma prova de que a Apple realmente leva muito a sério as questões de Monetização, Segurança e Controle de seus Aplicativos..

    Ou é só frescura mesmo….

    Espero que tenha sido útil pra você, qualquer dúvida deixe seu comentário abaixo!

    Até a próxima!