
Para iniciar o curso "
Fullstack Mobile Developer ", realizado em conjunto com a agência
Agima , preparamos uma série de materiais sobre como criar aplicativos móveis. Falaremos sobre casos, números, regras e falhas, mas começaremos, junto com Nikita Arkhipov, do estúdio Anvics, a partir do tópico de aprovação do lançamento na App Store. Vamos descobrir como concordar com a equipe de revisão e evitar problemas, passo a passo sobre o lado técnico - desde a criação de um certificado até a interação com o Itunes Connect - e sobre o que todos estão calados - como você passa pela revisão pela primeira vez. Prepare as patas, e vamos lá!
Pensamentos: e nesta série de materiais, os descontos do curso estão ocultos: em cada post sobre desenvolvimento móvel, há um novo jogo no qual a palavra ou o nome da solução da área móvel é criptografada. Para o réplica adivinhada, você recebe um desconto de 10%! A propósito, os descontos são cumulativos, portanto, se você coletar todos eles, poderá pegar o curso a um preço muito saboroso! Procure o primeiro rebus já neste texto!O jogo é desenvolvido, o aplicativo é criado, tudo está pronto para o lançamento. É hora do lançamento - e aqui você pode encontrar surpresas. Quando você precisa ser liberado com urgência e o aplicativo ainda não está pronto para uma revisão “honesta”, é difícil, mas bem possível, contornar as restrições estabelecidas pela Apple. Dizemos a você como concordar com a equipe que decide publicar aplicativos na App Store. Entendemos as possíveis causas de falha ou bloqueio. E para aqueles que lançam seu produto primeiro na loja de aplicativos, analisamos os detalhes técnicos da revisão, desde a criação de um certificado até a interação com o iTunes Connect.
Leia a documentação
Parece que, para se preparar para a revisão, basta ler as
Diretrizes de Revisão da
App Store algumas vezes, e tudo ficará bem. Mas as dificuldades podem começar já nesta fase. Primeiro, hoje é um Talmud de trinta páginas. Em segundo lugar, quase no início deste documento, existe o seguinte parágrafo: “Rejeitaremos a solicitação, cujo conteúdo viola os limites”.
Ao mesmo tempo, ninguém sabe exatamente qual é a fronteira por trás dos pedidos rejeitados. Como o juiz supremo americano disse uma vez: "Eu entenderei (essa fronteira) quando a vir". No entanto, você não deve se assustar com antecedência: apesar de uma formulação tão vaga, o processo de revisão em si é muito adequado e a Apple simplesmente não recusa os aplicativos a publicar.
Verifique se há atualizações nas Diretrizes de revisão da App Store. Configure notificações sobre notícias relacionadas no mecanismo de pesquisa ou siga os eventos de perfil nos quais as inovações são anunciadas. Por exemplo, na recente World Wide Developers Conference 2018, a Apple
introduziu uma série de novas regras relacionadas a políticas de privacidade, direcionamento de publicidade e aplicativos relacionados a criptomoedas. O projeto
Histórico de diretrizes de revisão da App Store pode ajudá-lo seriamente, cujos criadores marcam todas as novas alterações: o que é adicionado ao Guia é marcado em verde e o excluído em vermelho. Recomendamos que você assine o boletim deles.
Por que o pedido pode ser rejeitado
Basta lembrar claramente os principais motivos para uma possível recusa estabelecida nas próprias Diretrizes de Revisão da App Store. Eles são bastante simples e soam brevemente assim:
- Sem violência realista, pornografia, discriminação ou engano. Além dos jogos sangrentos óbvios e do conteúdo de notícias francas, existem casos mais complexos. Por exemplo, o aplicativo AfterSchool, no qual crianças americanas em idade escolar poderiam se comunicar em seu tempo livre, devido à falta de controle sobre seu conteúdo, rapidamente preenchido com ameaças de "brincadeiras" - filmagens em escolas, motivo pelo qual a Apple o removeu da loja várias vezes. No entanto, após algum tempo, o AfterSchool retornou à App Store.
- O aplicativo deve estar completamente finalizado e passar no teste de erros do lado dos criadores. A App Store não aceita aplicativos com erros óbvios que são executados muito lentamente em comparação com os pares e travam inesperadamente. A equipe de revisão testa o software que vem a eles para revisão manual e com muito cuidado. Devido a um erro encontrado, o aplicativo será rejeitado e uma captura de tela e uma descrição do que aconteceu serão enviadas a você. Isso pode ser considerado uma oportunidade para testes adicionais, mas não deve ser abusado - se você costuma enviar aplicativos abertamente incompletos para a revisão, a prioridade da equipe de revisão para considerar seus aplicativos cairá significativamente.
- Os desenvolvedores devem fornecer uma descrição correta de todas as funcionalidades, e o aplicativo deve funcionar de acordo com esta descrição. Em particular, isso significa que ele não deve ter nenhuma função oculta que será aberta ao usuário somente após a instalação. Por exemplo, se você usar a monetização free-to-play, quando alguns dos recursos do aplicativo estarão disponíveis apenas com base no pagamento, não deixe de falar sobre isso na descrição. Para total conformidade com este parágrafo, não se deve esquecer que o aplicativo deve solicitar permissão do usuário para usar seus contatos, dados de geolocalização, microfone e câmera, bem como acessar armazenamento interno de telefone e contas em serviços de terceiros, em particular durante a autorização.
- Você não pode usar APIs privadas, chamar funções do sistema interno do iOS, baixar novo código e ainda mais vírus. Se o parágrafo anterior é direcionado a desenvolvedores conscientes, mas desatentos, isso é direcionado diretamente a possíveis invasores.
- Os aplicativos hospedados na loja da Apple não devem ter pouca funcionalidade. A cláusula 4.2 das diretrizes declara: "Se o aplicativo não é de uso específico e não é percebido como um produto completo, não é adequado para a App Store". Portanto, a equipe de revisão procura garantir que tudo o que é oferecido ao usuário seja útil para ele. Um exemplo típico é a proibição de publicar wrappers para o navegador, alterando apenas sua aparência, mas sem adicionar novos recursos.
- O aplicativo não deve violar nenhuma lei em todos os países para os quais estará disponível. Referindo-se especificamente a este parágrafo, Roskomnadzor exigiu que a Apple removesse o Telegram do catálogo de aplicativos.
- A inclusão do aplicativo não deve violar os direitos autorais. Surge a pergunta: "como essa regra contornou o VKontakte com seu volume de músicas e vídeos ilegais?" De fato, o aplicativo VK há muito tempo tem a capacidade de transmitir esse conteúdo de maneira não-licenciável. Mas cerca de quatro anos atrás, a Apple começou a levar a violação de direitos autorais em outros países mais a sério (antes disso eles olhavam, pelo menos para a Rússia, com os dedos). Nesse momento, o VKontakte (e outros aplicativos com música pirateada) foi removido da loja e retornado somente após uma atualização na qual o conteúdo que viola os direitos autorais não está mais disponível. Agora, o VK novamente tem a funcionalidade de tocar música, mas agora é completamente legal - essas são limitadas à "audição demo" e as versões completas das listas de reprodução estão disponíveis em um aplicativo pago separado que transfere fundos para os músicos.
É importante observar aqui que a equipe de revisão da Apple ao recusar um aplicativo sempre descreve o motivo e explica o que precisa ser alterado. Mas, novamente, isso não deve ser abusado: algumas tentativas malsucedidas - e na próxima vez que seu conteúdo for submetido a um exame ainda mais cuidadoso.
Experiência pessoal
Na Anvics, nós mesmos, em momentos diferentes, encontramos problemas não apenas nesta lista ao aprovar a revisão.
Uma vez lançamos uma pequena promoção para uma campanha publicitária.
uma grande marca. Continha apenas as funções de visualização de vídeo em VR e feedback de representantes da marca. A equipe de revisão considerou que o aplicativo não era funcional o suficiente e o rejeitou. Porém, para passar com êxito na revisão, basta adicionar os botões "Compartilhar nas redes sociais" e a galeria. Após essas edições cosméticas (no contexto geral do desenvolvimento), o aplicativo passou com calma no teste.
Também foi útil saber que, para aplicativos de marca, se eles não forem publicados na conta da empresa da própria marca, você precisará de uma carta de confirmação dos representantes da marca, que permita usar o nome, o logotipo e outros atributos da marca para desenvolver e implementar o aplicativo. Você pode prepará-lo de forma gratuita: “Eu, o diretor geral, autorizo o uso da minha marca“ Brand ”para o aplicativo“ Application ”na conta“ Account ””. Digitalize este documento e anexe-o ao aplicativo de revisão.
Também existem recursos técnicos que você pode simplesmente não perceber. Por exemplo, uma vez descobrimos o fato de que todos os serviços de terceiros que o aplicativo acessa a API devem oferecer suporte ao IPv6. E, é claro, eles não devem conter URLs no formato 1.1.1.1. Esteja mais atento a esses detalhes, pois isso economizará seu tempo.
Revisão técnica lateral
Como passar pela revisão:
- pague por sua conta (padrão por US $ 99 ou Enterprise por US $ 299 por ano);
- verifique se o aplicativo está completamente pronto e testado;
- crie um certificado;
- pegue o identificador;
- usando-os, crie um perfil de aplicativo;
- Arquivar a montagem do aplicativo no Xcode
- envie para o Itunes Connect, um serviço através do qual ocorre toda a interação do desenvolvedor com a App Store.

No curso "Fullstack Mobile Developer", explicamos em detalhes como passar de uma idéia de aplicativo para um lançamento na App Store e, é claro, abordamos todas as etapas da revisão em mais detalhes. Mas compartilharemos um guia passo a passo sobre como enviar o aplicativo para revisão agora. (E não se esqueça de réplicas com descontos - já está perto!)
Assinamos a inscrição
A mecânica de criar uma assinatura pode causar dificuldades para quem nunca se deparou com isso antes, então vamos falar sobre isso em detalhes. Os aplicativos possuem certificados, identificadores e perfis.
- O certificado está conectado ao computador e autoriza-o a assinar aplicativos.
- ID do aplicativo - um identificador exclusivo para o aplicativo. Além disso, armazena uma lista de tecnologias usadas pelo aplicativo (por exemplo, Na compra de aplicativos, notificações push, etc.).
- Perfil - "união" do certificado e identificador, usado para assinar o aplicativo a partir de um computador específico. Também indica como o aplicativo será distribuído: desenvolvimento (iniciando o aplicativo do computador para o dispositivo), App Store (enviando o aplicativo para a loja oficial da Apple) ou Ad Hoc (instalação remota do aplicativo nos dispositivos, sem usar a App Store).
Para assinar o aplicativo, primeiro você precisa registrar o computador e obter um certificado, depois gerar o identificador do aplicativo e, no final, criar um perfil para enviar à App Store. Vamos seguir todos os passos passo a passo.
Etapa 1: Criar um certificado
Quando já registramos e pagamos a conta, entramos no
portal de desenvolvedores da
Apple .
Selecione Certificados, Identificadores e Perfis:

Vemos o menu do certificado:

Clique no ícone "+" à direita do rótulo de Certificados iOS:

Selecione a
App Store e Ad Hoc , clique em Continuar:

Depois de revisar a descrição de como a solicitação de criação de certificado será criada, clique em Continuar novamente:

Agora precisamos criar uma chave no computador. Para fazer isso, execute o programa "Keychain":

No menu superior, clique em "Porta-chaves" -> "Assistente de certificação" -> "Solicitar um certificado de uma agência de certificação ...":

Indicamos o email da nossa conta, no nome comum, escrevemos qualquer nome, o endereço de email do BS é deixado em branco, na solicitação, selecionamos "Saved to disk":

Clique em "Continuar" e salve o arquivo com a extensão .certSigningRequest em um local conveniente (por exemplo, na área de trabalho). Após salvar, transfira-o para o botão Escolher arquivo no portal da Apple:

Clique em Continuar, na próxima tela - Baixar e clique duas vezes no arquivo baixado - depois a janela "Chaveiros" deve se tornar ativa e "Adicionar certificados" deve aparecer. Verifique se ele contém os dados "Keychain - input" e clique em "Add":

O certificado para o computador está pronto.
Etapa 2: adicionar ID
No menu no portal da Apple, selecione o item IDs do aplicativo:

Como nos certificados, clique no ícone de adição:

Na página que se abre, certifique-se de preencher o campo Nome (o nome do aplicativo - abaixo dele, será exibido apenas no portal da Apple) e o ID do aplicativo. Copie o ID do aplicativo nas configurações do Xcode do seu projeto:

Abaixo, você verá uma lista de serviços que o aplicativo usará. Marque as caixas de seleção necessárias nas caixas de seleção correspondentes (posteriormente, esta lista pode ser alterada).
Depois disso, clique em Continuar na parte inferior da página, na próxima tela - Registre-se e na última - Concluído. O ID do aplicativo está pronto.
Etapa 3: criar um perfil
No menu, vá para Perfis de provisionamento -> Distribuição:

Clicamos no familiar ícone "+" e, na aba aberta, selecionamos a
App Store :

Na próxima tela, selecione o identificador de aplicativo que registramos:

Agora, selecionamos o certificado e, em seguida, inserimos o nome do perfil (sob esse nome, ele será exibido no xCode - ou seja, este é o nome de trabalho visível apenas para você e os representantes da Apple):

Clique em Continuar, na próxima tela - Baixar e clique duas vezes no arquivo baixado. Após essas etapas simples, o Xcode deve se tornar uma janela ativa. Está tudo pronto: criamos todos os arquivos necessários para assinar nosso aplicativo.
Adira ao iTunes Connect
Antes de enviar um aplicativo à App Store, é necessário registrá-lo no iTunes Connect. Para fazer isso, abra o site
appstoreconnect.apple.com e após a autorização com o mesmo nome de usuário / senha que no developer.apple, chegamos à tela principal:

Após selecionar "Meus aplicativos", clique no ícone mais e selecione "Novo aplicativo":

Preencha todos os campos na janela que é aberta. No campo SKU, insira o identificador do aplicativo e atribua os caracteres ".SKU":

Clique em "Criar" - agora o aplicativo está registrado.
Arquivando compilações de aplicativos
De volta ao Xcode com o projeto:

Desativar Gerenciar assinatura automaticamente, clique em Nenhum oposto à equipe e selecione Adicionar conta na lista suspensa. Depois disso, uma janela será aberta para você digitar seu login e senha:

Depois disso, nas configurações do projeto, selecione o comando adicionado.
Agora resta instalar o perfil e o certificado no Xcode. Para fazer isso, abra a guia Configurações de compilação (verifique se Tudo está selecionado logo abaixo):

Role até a seção Assinatura e selecione nosso certificado e perfil:

Próximo destino -> Dispositivo iOS genérico:

Clique em Produto -> Arquivo:

Estamos aguardando a janela abrir após o arquivamento (pode levar até meia hora):

Clique em Carregar na App Store ...

Clique em Avançar, após o que o Xcode gastará um pouco de tempo para baixar e exibirá a seguinte janela:

Aqui, selecionamos nosso certificado e perfil, clique em Avançar, depois faça o upload e aguarde! Após carregar o Xcode com êxito, após cerca de 30 a 60 minutos, a montagem aparecerá no appstoreconnect.
Quando isso aconteceu, a montagem, juntamente com a descrição do aplicativo, os documentos necessários (se houver) e as informações de contato podem ser enviados com moderação à equipe de revisão.
E aqui está o rébus! Lembre-se de que a palavra ou conceito oculto nela se refere ao desenvolvimento móvel, lembre-se de que o inglês pode interferir no russo aqui e, o mais importante - não se esqueça de que seguiremos cuidadosamente os comentários e removeremos dicas e respostas! O prólogo, criptografado no rebus, deve ser chamado quando nosso gerente entrar em contato com você após o envio de um aplicativo para o curso. Os descontos para quebra-cabeças resolvidos (serão cinco no total, de acordo com o número de materiais) são resumidos entre si, mas não com descontos no site. Você não deve demorar muito. A promoção funciona até 30 de agosto de 2018.
Rotunda
O IOS, devido às especificidades da plataforma fechada, possui apenas uma loja de aplicativos oficial - a App Store. Se você faz um jailbreak, pode, é claro, usar o Cydia não oficial, mas nos últimos anos ele vem perdendo cada vez mais popularidade, o que significa que não possui níveis muito altos de atividade do usuário. Essa opção pode ser relevante para aqueles que não desejam enfrentar restrições impostas pela Apple, mas isso não é necessário para o desenvolvedor comum.
Se você precisar ser liberado com urgência, é difícil contornar as restrições estabelecidas pela Apple, mas é bem possível. Em nossa experiência, se o aplicativo não violar muito as regras, você pode pedir para ignorá-lo com cuidado, prometendo corrigi-lo na próxima versão e motivar a necessidade urgente de entrar na loja, por exemplo, pelo fato de um evento ser planejado para amanhã, o que requer o uso desse aplicativo . Em geral, a equipe de revisão é bastante amigável: seus representantes estão prontos para conhecer os desenvolvedores e, se você precisar de uma solução rápida para o problema, poderá telefonar para eles.
No entanto, como dissemos acima, se você quebrar sistematicamente as regras e enviar um após o outro novos conjuntos instáveis, a Apple poderá aplicar sanções a você.
Cada revisão subsequente de assembléias que violam as regras da App Store levará a um aumento em seus termos. Teoricamente, você pode obter um bloqueio de conta, mas, na prática, essa medida geralmente não é aplicada no estágio de pré-lançamento.
Se a equipe de revisão detectar fraude do usuário ou violação das regras em um aplicativo já lançado, ela será excluída do diretório. Violações graves como roubo de dados podem até levar à exclusão da conta.
Revisão de tempo
Na maioria dos casos, uma revisão leva de um a dois dias, mas pode durar mais se você não tiver todas as informações necessárias (por exemplo, logons e senhas para acessar a parte privada do funcional) ou quando reenviar o aplicativo para moderação após várias falhas.
Nesse caso, a revisão leva mais tempo com cada falha subsequente e seu prazo pode aumentar para várias semanas.Se você estiver desenvolvendo aplicativos para várias plataformas - lembre-se de que, no Google Play, uma revisão geralmente leva várias horas; primeiro, é claro, é necessário fazer o download da versão do iOS se o aplicativo for lançado no iOS e no Android ao mesmo tempo.Como você pode ver, não há nada errado em passar na revisão: os representantes da Apple são amigáveis, as regras são relativamente flexíveis e os termos da revisão são curtos. E não se esqueça da cortesia: a leitura atenta das diretrizes, os testes independentes de alta qualidade e a atitude atenta aos conselhos da equipe de revisão garantirão o estabelecimento de boas relações com eles e a aprovação na revisão pela primeira vez.