As três abordagens, em termos simples
Quando uma empresa decide que quer uma aplicação, a primeira pergunta técnica costuma ser esta: nativa, híbrida ou PWA? As três podem estar no ecrã principal com o seu logótipo, mas são construídas de forma diferente. Isso afeta o que a aplicação consegue fazer, onde é distribuída e quanto trabalho dá manter.
"Híbrida" é uma palavra confusa. Antigamente, significava um site embrulhado dentro de uma aplicação. Hoje, quando se diz híbrida, quase sempre se quer dizer multiplataforma: um único código-fonte que produz aplicações reais para iPhone e Android.
- Nativa: uma aplicação escrita na linguagem oficial de cada plataforma, Swift para o iPhone e Kotlin para o Android. Isso significa dois projetos separados, distribuídos pela App Store e pelo Google Play.
- Multiplataforma: um único código-fonte feito com React Native ou Flutter, que é compilado numa aplicação para cada plataforma. O React Native usa os componentes de interface do próprio sistema; o Flutter desenha a sua interface. Estas aplicações também são publicadas nas lojas.
- PWA (aplicação web progressiva): uma aplicação construída com tecnologia web e instalada diretamente a partir do navegador, sem precisar de loja. Abre em ecrã inteiro, tem um ícone no ecrã principal e pode funcionar offline.
Como a experiência do utilizador é diferente
As aplicações nativas dão a sensação mais fluida e seguem exatamente as convenções de cada plataforma: o gesto de voltar, os menus e as animações são os que os utilizadores já conhecem. Isso importa em aplicações de uso intensivo, como editores de fotografia, jogos ou navegação.
Uma aplicação multiplataforma bem feita aproxima-se muito. Na maioria das aplicações empresariais, como encomendas, marcações ou um portal de cliente, os utilizadores não notam a diferença. O que separa uma boa aplicação de uma má, nestes casos, é o cuidado com que foi feita, e não a framework.
As PWA têm uma vantagem que costuma ser subestimada: o acesso começa com um link. O cliente abre o URL, usa logo a aplicação no navegador e instala-a se quiser, sem conta de loja e sem uma transferência grande. No Android, o navegador oferece um botão de instalação. No iPhone, a instalação faz-se pelo menu de partilha do navegador, por isso é preciso uma pequena indicação no ecrã a explicar esse passo.
Câmara, notificações, Bluetooth e outras funcionalidades
É aqui que muitas decisões são tomadas. Os navegadores ganharam muitas capacidades, e várias limitações repetidas em artigos antigos já não se aplicam. Outras ainda se aplicam. Eis o ponto da situação:
- Câmara e fotografias: funcionam nas três abordagens. Uma PWA pode abrir a câmara, tirar fotografias, enviar imagens e ler códigos QR.
- Notificações push: funcionam no Android e, no iPhone desde 2023, desde que a PWA tenha sido adicionada ao ecrã principal. As aplicações nativas e multiplataforma recebem-nas sem essa condição.
- Localização: uma PWA consegue ler a localização enquanto está aberta. Seguir a localização em segundo plano, como faz uma aplicação de estafetas, exige uma aplicação nativa ou multiplataforma.
- Bluetooth e NFC: no navegador só funcionam no Chrome para Android, e o Safari no iPhone não os suporta. Se a aplicação comunica com uma balança, uma impressora ou outro equipamento, opte por nativa ou multiplataforma.
- Tarefas em segundo plano, widgets e integração com o Apple Saúde ou o Google Health Connect continuam a ser território das aplicações de loja.
Publicação e regras das lojas de aplicações
Estar na App Store e no Google Play dá credibilidade e um canal de pesquisa dentro da loja. Em troca, precisa de uma conta de programador paga em cada loja, cada versão passa por uma revisão e tem de cumprir as regras de cada loja. A Apple, em particular, tende a rejeitar aplicações que são apenas um site dentro de uma moldura, sem funcionalidade própria.
Os pagamentos são onde a maioria das pessoas se surpreende. Para bens físicos e serviços do mundo real, como uma refeição, um corte de cabelo ou uma caixa de subscrição entregue em casa, a aplicação pode usar o seu próprio prestador de pagamentos. Para conteúdo digital consumido dentro da aplicação, como cursos, vídeos ou funcionalidades desbloqueadas por subscrição, as lojas exigem, em geral, o seu próprio sistema de faturação e ficam com uma comissão sobre a venda. Estas regras têm exceções, variam consoante o país e mudaram nos últimos anos, por isso verifique o seu caso concreto antes de definir um modelo de preços.
Uma PWA fica fora desse sistema. Não há revisão, as atualizações ficam no ar assim que são publicadas e os pagamentos passam pelo prestador que escolher. Em contrapartida, abdica da loja como montra.
Manutenção, prazo e custo relativo
A nativa é o caminho mais caro e mais lento, porque está a construir duas aplicações com dois códigos-fonte. Cada nova funcionalidade é feita duas vezes, tal como cada correção. Compensa quando o desempenho ou o acesso profundo ao dispositivo justificam o investimento.
A multiplataforma reduz bastante o esforço, já que o mesmo código serve as duas plataformas. Continua a haver trabalho específico de cada loja: configuração, revisões e atualizações dos sistemas operativos que exigem ajustes de tempos a tempos.
Uma PWA costuma ser a mais rápida a lançar e a mais simples de manter: um código-fonte, uma publicação, e o mesmo sistema pode ser ao mesmo tempo o seu site e a sua aplicação. Se está a validar uma ideia, isso significa chegar mais cedo aos utilizadores e gastar menos antes de saber o que funciona.
Qual serve cada tipo de negócio
Na prática, a decisão segue o caso de utilização. Estes são os que vemos com mais frequência:
- Marcações (salões, clínicas, estúdios): uma PWA funciona muito bem. Os clientes marcam através de um link, recebem notificações de lembrete depois de instalarem a aplicação e o negócio gere tudo a partir de um painel. Acrescente um lembrete por e-mail ou mensagem para quem não a instalou.
- Encomendas (restaurantes, entregas, cafés): uma PWA é a escolha mais comum. O link vai na biografia, no menu e no código QR da mesa, e os pagamentos por cartão não ficam presos às regras das lojas.
- Clubes de subscrição: depende do que vende. Subscrições de produtos físicos ou de serviços presenciais funcionam bem como PWA. Subscrições de conteúdo digital numa aplicação de loja esbarram nas regras de faturação, o que favorece uma PWA ou exige um planeamento cuidadoso do modelo de preços.
- Aplicações internas para equipas: uma PWA cobre a maioria dos casos, como listas de verificação, ordens de trabalho, fotografias no terreno e trabalho offline, sem passar por nenhuma loja. Se a operação precisar de localização em segundo plano ou de equipamento Bluetooth, opte por multiplataforma.
- Produtos de IA: na maioria dos casos, o modelo corre no servidor e a aplicação limita-se a enviar e receber dados, por isso uma PWA ou aplicação web chega. Nativa ou multiplataforma fazem sentido quando a IA tem de correr no dispositivo, processar a imagem da câmara em tempo real ou funcionar offline. Seja qual for a abordagem, as chaves de API de IA ficam no servidor, nunca dentro da aplicação.
Perguntas que resolvem a escolha
Antes de falar de tecnologia, responda a estas perguntas. Elas eliminam a maioria das opções:
- A aplicação precisa de algo que o navegador não consegue fazer, como Bluetooth, localização em segundo plano ou widgets?
- Estar na loja de aplicações é importante para o seu público, ou os clientes vão chegar pelo site, pelas redes sociais e pelas mensagens?
- Está a vender bens físicos, serviços presenciais ou conteúdo digital?
- Precisa de validar a ideia depressa, ou já tem utilizadores que dependem do produto todos os dias?
- Quem vai manter a aplicação depois do lançamento e com que frequência vai mudar?
Como a BG Coding recomenda um caminho
Não existe uma abordagem que sirva a todos os projetos. Existe a que cobre as funcionalidades de que a aplicação precisa, a forma como os clientes chegam até ela e o orçamento que tem. Começar por uma PWA e passar para uma aplicação de loja quando a utilização o justificar é um caminho comum e sensato.
Na BG Coding, a recomendação sai da fase de diagnóstico. Conhecemos o negócio, o público e as funcionalidades necessárias, e só depois sugerimos se o projeto funciona melhor como PWA, com a publicação nas lojas como passo opcional, ou se exige uma aplicação multiplataforma ou nativa. Se está a ponderar esta decisão, podemos fazer esse diagnóstico consigo.