{"id":17,"date":"2015-09-18T01:08:27","date_gmt":"2015-09-18T04:08:27","guid":{"rendered":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/publicando-um-aplicativo-na-apple-store\/"},"modified":"2015-09-18T01:08:27","modified_gmt":"2015-09-18T04:08:27","slug":"publicando-um-aplicativo-na-apple-store","status":"publish","type":"post","link":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/publicando-um-aplicativo-na-apple-store\/","title":{"rendered":"Como publicar um aplicativo na Apple Store"},"content":{"rendered":"<p>Eu tive muitas d\u00favidas no processo de publica\u00e7\u00e3o de aplicativos na Apple Store em minha primeira publica\u00e7\u00e3o, pois o processo realmente \u00e9 bastante confuso, principalmente para quem vem do Android que o processo de publica\u00e7\u00e3o \u00e9 simples e r\u00e1pido. Este foi o motivo principal de escrever este artigo para ajudar outras pessoas que est\u00e3o\u00a0com as mesmas d\u00favidas que eu tive.<\/p>\n<p>O objetivo deste artigo \u00e9 colocar em forma de passos sequenciais todo o processo de publica\u00e7\u00e3o de um aplicativo na Apple Store. Vale destacar a necessidade de um Mac\u00a0ou uma m\u00e1quina virtual no Windows rodando MacOS.<\/p>\n<p>Antes de tudo, voc\u00ea precisar\u00e1 ter uma <a href=\"https:\/\/idmsa.apple.com\/IDMSWebAuth\/login?&amp;appIdKey=891bd3417a7776362562d2197f89480a8547b108fd934911bcbea0110d07f757&amp;path=%2F%2Fmembercenter%2Findex.action\" target=\"_blank\" rel=\"noopener\">Apple ID<\/a> de desenvolvedor, e claro j\u00e1 ter pago e ativado a sua conta de desenvolvedor, esta conta tamb\u00e9m deve estar atribu\u00edda a uma conta do <a href=\"https:\/\/itunesconnect.apple.com\/WebObjects\/iTunesConnect.woa\" target=\"_blank\" rel=\"noopener\">iTunes Connect<\/a>.<\/p>\n<p>Ap\u00f3s a aplica\u00e7\u00e3o desenvolvida iremos precisar assinar o arquivo *.ipa (equivalente ao *.apk do Android), isso inclui v\u00e1rios passos de gera\u00e7\u00e3o de certificados, gera\u00e7\u00e3o de chaves e provisioning profiles, al\u00e9m da utiliza\u00e7\u00e3o do Application Loader para finalizar a submiss\u00e3o do aplicativo na Apple Store. Todos estes passos ser\u00e3o tratados no decorrer deste artigo.<\/p>\n<p>Este artigo n\u00e3o inclui a gera\u00e7\u00e3o do arquivo *.ipa, pois este assunto est\u00e1 detalhado em <a href=\"http:\/\/www.williamcleissondecarvalho.com.br\/2015\/09\/18\/gerando-o-ipa-do-aplicativo-com-xcode\/\">outro artigo<\/a>.<\/p>\n<p>Tendo os requisitos mencionados acima, vamos ao que interessa. Os passos para publica\u00e7\u00e3o s\u00e3o:<\/p>\n<ol>\n<li>Adicionar o Certificado<\/li>\n<li>Adicionar App ID (Identifiers)<\/li>\n<li>Adicionar Provisioning Profile<\/li>\n<li>Submetendo Aplicativo para Apple Store<\/li>\n<\/ol>\n<h3>Adicionar o Certificado<\/h3>\n<p>Para criar um certificado \u00e9 necess\u00e1rio acessar sua \u00e1rea de desenvolvedor em <a href=\"https:\/\/developer.apple.com\/membercenter\/index.action\" target=\"_blank\" rel=\"noopener\">Member Center<\/a> utilizando sua AppleID.<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot110.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-39\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot110.jpg\" alt=\"ScreenShot110\" width=\"665\" height=\"338\" \/><\/a><\/p>\n<p>Ap\u00f3s isso, clique em Certificates:<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot111.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-41\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot111.jpg\" alt=\"ScreenShot111\" width=\"984\" height=\"447\" \/><\/a><\/p>\n<p>Clique no bot\u00e3o de adicionar:<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot112.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-42\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot112.jpg\" alt=\"ScreenShot112\" width=\"982\" height=\"200\" \/><\/a><\/p>\n<p>Neste momento deve ser escolhido entre certificado de Desenvolvimento e Publica\u00e7\u00e3o. O certificado de desenvolvimento serve para aplicativos\u00a0ainda em desenvolvimento ou em fase de testes, e o certificado de publica\u00e7\u00e3o \u00e9 para quando o aplicativo j\u00e1 est\u00e1 pronto para ser publicado. Selecione a op\u00e7\u00e3o inferior em Production &gt;&gt; App Store and Ad Hoc e clique em continuar<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot113.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-43\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot113.jpg\" alt=\"ScreenShot113\" width=\"982\" height=\"698\" \/><\/a><\/p>\n<p>Na p\u00e1gina a seguir ser\u00e1 solicitado a requisi\u00e7\u00e3o do certificado .CSR, apenas prossiga clicando em continuar.<\/p>\n<p>Para gerar a requisi\u00e7\u00e3o de certificado, voc\u00ea precisar\u00e1 de uma chave privada e p\u00fablica, isto poder\u00e1 ser feito em um sistema iOS, se voc\u00ea est\u00e1 no Windows pode tentar virtualizar um OS X Mountain Lion com VMWare, ou voc\u00ea poder\u00e1 fazer diretamente do seu macbook, ou mac pc como a seguir:<\/p>\n<p>Abra o Keychain Access, clique no menu e entre em Certificate Assistant &gt;&gt; Request a Certificate from a Certificate Authority, isto ir\u00e1 gerar uma chave p\u00fablica e privada para o seu certificado.<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/Captura-de-Tela-2015-09-18-\u00e0s-00.48.16.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-60\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/Captura-de-Tela-2015-09-18-\u00e0s-00.48.16.png\" alt=\"Captura de Tela 2015-09-18 \u00e0s 00.48.16\" width=\"836\" height=\"639\" \/><\/a><\/p>\n<p>Insira os dados da sua conta e continue at\u00e9 o fim, escolha para salvar o arquivo do certificado no disco em um local de sua prefer\u00eancia<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/Captura-de-Tela-2015-09-18-\u00e0s-00.48.57.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-61\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/Captura-de-Tela-2015-09-18-\u00e0s-00.48.57.png\" alt=\"Captura de Tela 2015-09-18 \u00e0s 00.48.57\" width=\"728\" height=\"548\" \/><\/a><\/p>\n<p>Ao utilizar este assistente, ser\u00e3o criadas duas chaves p\u00fablica e privada dentro de seu Keychain Access que ser\u00e3o utilizadas posteriormente.<\/p>\n<p>Ap\u00f3s gerar o arquivo CER volte para sua \u00e1rea de desenvolvedor no site, selecione o arquivo gerado e continue.<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot114.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-45\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot114.jpg\" alt=\"ScreenShot114\" width=\"738\" height=\"770\" \/><\/a><\/p>\n<p>Na tela a seguir fa\u00e7a o download\u00a0de seu certificado ( .cer ) em um local\u00a0seguro.<\/p>\n<p>O pr\u00f3ximo passo \u00e9 criar o AppID, identificador do aplicativo que ser\u00e1 publicado, \u00a0no iTunesConnect.<\/p>\n<p>&nbsp;<\/p>\n<h3>Adicionar App ID (Identifiers)<\/h3>\n<p>Acesse o site do <a href=\"https:\/\/itunesconnect.apple.com\/\" target=\"_blank\" rel=\"noopener\">iTunnesConnect<\/a> e clique em Meus Apps:<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot115.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-46\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot115.jpg\" alt=\"ScreenShot115\" width=\"195\" height=\"236\" \/><\/a><\/p>\n<p>Clique em Novo App iOS<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot116.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-47\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot116.jpg\" alt=\"ScreenShot116\" width=\"293\" height=\"162\" \/><\/a><\/p>\n<p>Preencha as informa\u00e7\u00f5es referentes ao seu aplicativo e clique em Criar.<\/p>\n<p>Obs: Em SKU, informe um identificador \u00fanico do seu aplicativo que n\u00e3o ser\u00e1 exibido na Apple Store, eu costumo preencher o BundleID para padronizar e simplificar este cadastro. O BundleID \u00e9 o nome do pacote + nome do app e pode ser consultado no Xcode nas defini\u00e7\u00f5es do aplicativo, por exemplo, br.com.williamcleissondecarvalho.meuapp.<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot117.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-48\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot117.jpg\" alt=\"ScreenShot117\" width=\"798\" height=\"406\" \/><\/a><\/p>\n<p>Ap\u00f3s criado o AppID o pr\u00f3ximo passo \u00e9 criar um Provisioning Profile antes do passo final de publica\u00e7\u00e3o do aplicativo.<\/p>\n<p>&nbsp;<\/p>\n<h3>Adicionar Provisioning Profile<\/h3>\n<p>Provisioning Profile permite voc\u00ea instalar o aplicativo em dispositivos para testes incluindo seus Certificados, App IDs e Devices.<\/p>\n<ul>\n<li>Clique em Provisioning Profiles no site da apple, clique no + para adicionar, selecione App Store e clique Continue.<\/li>\n<li>Selecione o App ID do seu Aplicativo e clique Continue.<\/li>\n<li>Selecione o Certificado que foi criado na primeira etapa e Continue.<\/li>\n<li>Crie um nome para seu Profile e clique Generate.<\/li>\n<li>Fa\u00e7a o download do seu Provisioning Profile que j\u00e1 est\u00e1 associado a um Certificado e AppID.<\/li>\n<\/ul>\n<p>Ap\u00f3s isso \u00e9 poss\u00edvel conferir o status final do profile gerado.<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot118.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-49\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/ScreenShot118.jpg\" alt=\"ScreenShot118\" width=\"703\" height=\"166\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<h3>Submetendo Aplicativo para Apple Store<\/h3>\n<ul>\n<li>Insira as demais descri\u00e7\u00f5es do seu aplicativo, screenshots nos tamanhos exigidos, \u00edcone do aplicativo, classifica\u00e7\u00e3o, etc.<\/li>\n<li>Assim que voc\u00ea ver seu status em Waiting For Upload, voc\u00ea est\u00e1 pronto para enviar seu aplicativo para avalia\u00e7\u00e3o.<\/li>\n<\/ul>\n<p>Agora que estamos prontos para enviar o nosso aplicativo, iremos precisar de um MacOS rodando para utilizar o Application Loader.<\/p>\n<p><a href=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/Captura-de-Tela-2015-09-18-\u00e0s-00.51.11.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-62\" src=\"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-content\/uploads\/2015\/09\/Captura-de-Tela-2015-09-18-\u00e0s-00.51.11.png\" alt=\"Captura de Tela 2015-09-18 \u00e0s 00.51.11\" width=\"754\" height=\"484\" \/><\/a><\/p>\n<ul>\n<li>Abra o Application Loader<\/li>\n<li>Clique Deliver Your App<\/li>\n<li>Selecione o app que voc\u00ea criou no iTunes Connect e avance<\/li>\n<li>Selecione o arquivo *.ipa gerado no seu Xcode.<\/li>\n<li>Envie e aguarde a conclus\u00e3o.<\/li>\n<\/ul>\n<p>Enfim enviado\u00a0o aplicativo para publica\u00e7\u00e3o.<\/p>\n<p>Vale ressaltar que este passo n\u00e3o publica oficialmente o aplicativo na Apple Store. A Apple \u00e9 bastante rigorosa na avalia\u00e7\u00e3o dos aplicativos antes da publica\u00e7\u00e3o oficial, voc\u00ea ser\u00e1 notificado atrav\u00e9s do e-mail sobre o andamento da aprova\u00e7\u00e3o e publica\u00e7\u00e3o do seu app.<\/p>\n<p>N\u00e3o se preocupe com a demora na aprova\u00e7\u00e3o, voc\u00ea pode consultar o tempo m\u00e9dio de aprova\u00e7\u00e3o do aplicativo atrav\u00e9s desta ferramenta chamada <a href=\"http:\/\/appreviewtimes.com\/\" target=\"_blank\" rel=\"noopener\">Average App Store Review Times<\/a>.<\/p>\n<h3>Refer\u00eancias:<\/h3>\n<p><a href=\"http:\/\/blog.webizz.biz\/2013\/07\/09\/como-submeter-um-aplicativo-para-apple-store\/\" target=\"_blank\" rel=\"noopener\">http:\/\/blog.webizz.biz\/<\/a><\/p>\n<p><a href=\"https:\/\/developer.apple.com\/library\/ios\/documentation\/IDEs\/Conceptual\/AppDistributionGuide\/Introduction\/Introduction.html\" target=\"_blank\" rel=\"noopener\">https:\/\/developer.apple.com\/library\/ios\/documentation\/IDEs\/Conceptual\/AppDistributionGuide\/Introduction\/Introduction.html<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Eu tive muitas d\u00favidas no processo de publica\u00e7\u00e3o de aplicativos na Apple Store em minha primeira publica\u00e7\u00e3o, pois o processo realmente \u00e9 bastante confuso, principalmente para\u2026<\/p>\n","protected":false},"author":1,"featured_media":18,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[11,10,7,8,4,9],"class_list":["post-17","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ios","tag-aplicativo","tag-app","tag-apple-store","tag-appstore","tag-ios","tag-publicacao"],"_links":{"self":[{"href":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-json\/wp\/v2\/posts\/17","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-json\/wp\/v2\/comments?post=17"}],"version-history":[{"count":0,"href":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-json\/wp\/v2\/posts\/17\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-json\/wp\/v2\/media\/18"}],"wp:attachment":[{"href":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-json\/wp\/v2\/media?parent=17"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-json\/wp\/v2\/categories?post=17"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.williamcleissondecarvalho.com.br\/blog\/wp-json\/wp\/v2\/tags?post=17"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}