Módulo 01 de 12 — Arquitetura & Compliance

Requisitos & Planejamento Inicial de Engenharia Mobile

Defina a arquitetura técnica correta, configure sua conta no Google Play Console sem riscos de suspensão e cumpra os requisitos legais obrigatórios (LGPD, GDPR e Data Safety) antes de escrever a primeira linha de código.

1.1. Escolha da Stack & Matriz de Decisão Arquitetural

A escolha do ecossistema de desenvolvimento impacta diretamente o ciclo de manutenção anual exigido pelo Google Play (atualização obrigatória de Target SDK), o tamanho final do pacote `.aab` e a estabilidade no Android Vitals.

React Native / Expo SDK 52+

Recomendado para 90% das aplicações comerciais e utilitárias (como os apps TestPool, PetMed e TáPago). Garante compilação híbrida com New Architecture (Fabric & TurboModules), suporte automático ao Target SDK 36 e gestão declarativa de permissões via `app.json`.

Native Kotlin (Jetpack Compose)

Ideal para aplicativos que exigem processamento contínuo em segundo plano (*Foreground Services*), manipulação direta de sensores de baixo nível, Bluetooth BLE industrial ou codificação de vídeo em tempo real.

Critério Técnico React Native + Expo Prebuild Kotlin Nativo (Compose) Flutter (Impeller)
Curva de Atualização SDK Anual Rápida (via upgrade de SDK e Config Plugins) Direta no `build.gradle.kts` Moderada (depende de pacotes pub.dev)
Tamanho Médio do App Bundle (.aab) 14 MB a 22 MB (com Hermes ativo) 6 MB a 12 MB (com R8/ProGuard) 12 MB a 18 MB
Integração Google Play Billing v8.0+ Homologada (`react-native-iap` / RevenueCat) Nativa (`com.android.billingclient`) Oficial (`in_app_purchase`)
Recomendação de Engenharia Fábrica Manual: Utilize Expo SDK com Continuous Native Generation (CNG / Prebuild) e TypeScript estrito. Nunca edite as pastas `/android` e `/ios` manualmente sem documentar nos plugins de configuração, garantindo builds reprodutíveis.

1.2. Estruturação da Conta no Google Play Console

Desde a atualização das políticas de verificação de desenvolvedores do Google Play, a escolha correta do tipo de conta determina o fluxo de homologação de cada aplicativo publicado.

  • Conta Pessoal (Pessoa Física — Regra de 13/11/2023): Contas pessoais criadas após novembro de 2023 possuem a exigência obrigatória de executar um Teste Fechado com no mínimo 12 testadores ativos durante 14 dias ininterruptos para cada novo aplicativo antes de liberar o botão de Produção. Na Fábrica Manual, recomendamos operar com 20 testadores reais via TestPool como margem de segurança contra desistências.
  • Conta Organizacional (Pessoa Jurídica / CNPJ): Exige o registro prévio do D-U-N-S Number (Dun & Bradstreet) vinculado exatamente à razão social e endereço fiscal do CNPJ, além de validação de telefone comercial e domínio corporativo próprio (ex: `@fabricamanual.com.br`).
  • Padronização do Application ID (`packageName`): Defina um identificador imutável no padrão de domínio reverso (ex: `com.fabricamanual.nomeapp`). Uma vez publicado o primeiro `.aab` no Play Console, o `applicationId` jamais poderá ser alterado.

1.3. Arquitetura Jurídica & Compliance (LGPD e Google User Data Policy)

Mais de 40% das rejeições iniciais no Google Play ocorrem por divergências entre o que o código do aplicativo coleta (via SDKs como Firebase, AdMob ou Sentry) e o que foi declarado no formulário de Segurança dos Dados (Data Safety).

// Exemplo de Matriz de Declaração Obrigatória antes do Build:
1. Coleta Identificadores do Dispositivo (Advertising ID / Firebase Installation ID)?
   -> Sim: Declarar em "IDs do dispositivo ou outros IDs" (Finalidade: Análise / Publicidade).
2. Permite criação de conta (Firebase Auth / E-mail / Google Sign-In)?
   -> Sim: Obrigatório fornecer URL pública de Exclusão de Conta (Web) + opção dentro do App.
3. Armazena dados localmente (SQLite / AsyncStorage)?
   -> Declarar na Política de Privacidade se os dados permanecem apenas no aparelho (Local-First).
Regra Anti-Bloqueio de URLs Públicas: Todo aplicativo deve possuir links públicos em HTTPS (sem exigir login) para a Política de Privacidade e para a Central de Exclusão de Dados. Os robôs da Google verificam essas páginas periodicamente; se retornarem erro 404, o app recebe aviso de remoção em 7 dias.

1.4. Estudo de Caso Prático: Planejamento Local-First vs Cloud-Sync

No desenvolvimento do portfólio da Fábrica Manual, aplicamos duas arquiteturas distintas conforme a sensibilidade dos dados:

Caso 1: EduText (Arquitetura 100% Offline)

Por ser um editor de notas estudantis e textos Markdown, projetamos o app sem necessidade de login em nuvem. Isso reduziu a superfície de auditoria no Play Console e acelerou a aprovação em menos de 48h após os 14 dias de teste.

Caso 2: TestPool (Arquitetura Cloud Auditável)

Por gerenciar missões de QA, reputação e PoolCoins entre milhares de testadores, estruturamos autenticação via Firebase Auth, regras restritas no Firestore (`firestore.rules`) e canal dedicado de exclusão de conta em conformidade com a LGPD.