Eu deveria usar uma Web View no meu app?

Eu deveria usar uma Web View no meu app?

Essa é uma pergunta que sempre surge quando você já tem uma aplicação web, e pretende construir um app. Eu deveria usar uma Web View? No texto de hoje, vamos discutir essa solução.

O que é uma Web View?

Um Web View é como se você abrisse um navegador dentro do seu aplicativo, e utilizasse a página por ali mesmo. Parece muito com um <iframe>, que temos no HTML, mas para aplicações nativas de um celular.

O usuário se mantém no aplicativo, mas, na verdade, acessa uma aplicação web, completamente independente desta aplicação móbile.

Quais são minhas opções de desenvolvimento?

Não sendo um Web View podemos usar a opção mais padrão e natural de construir um novo aplicativo.

A partir daí temos várias opções: Flutter, Swift, Kotlin, React Native e tantas outras, que devem ser analisadas individualmente da forma que melhor te agrade, ou seja, boa para o seu negócio, tal qual uma escolha de linguagem de programação ou framework a ser utilizado no projeto.

Vale a pena?

“Tenho minha página web, responsiva, e funciona muito bem no celular. Porque então desenvolver um aplicativo e manter esse aplicativo, para fazer a mesma coisa?”.

Este é um argumento que de início faz bastante sentido. Você realmente pode economizar tempo de desenvolvimento e recursos de uma equipe para desenvolver um aplicativo. A manutenção do aplicativo é mais fácil, visto que é preciso trabalhar somente na versão web.

Mas existe um motivo pelo qual grandes empresas não usam Web View em seus aplicativos:

As lojas Google Play e AppStore não recomendam

As duas maiores lojas de aplicativo, para Android e iOS, respectivamente, não recomendam aplicativos feitos somente com WebView.

Por não poderem garantir a segurança de aplicativos feitos a partir de Web View a seus usuários, as lojas tendem a até mesmo não aceitar a publicação dos aplicativos, e deixam isso bastante em claro nas documentações:

O Google Play diz:

“Your app must not merely provide a webview of a website or have a primary purpose of driving affiliate traffic to a website, regardless of ownership of the website.”

A Apple Store também:

“Your app should include features, content, and UI that elevate it beyond a repackaged website. If your app is not particularly useful, unique, or “app-like,” it doesn’t belong on the App Store”

Construir então um aplicativo com base em uma Web View pode ser bastante perigoso, afinal, ninguém quer correr o risco de seu aplicativo sair da loja de uma hora para outra.

Bugs acontecem

Um Web View não é o mesmo que o navegador do seu celular.

Lembram do finado Internet Explorer? Programávamos o site, estava tudo certo, funcionando 100%, mas era abrir a página no Explorer e estava toda quebrada. Acontece bem parecido em um Web View.

Por mais que seja mais rápido simplesmente trazer sua página para dentro do app em um web view, bugs inesperados podem acontecer, e quebras imprevisiveis na sua página podem estar presentes. Tratar esses bugs podem ser uma experiência bastante descontrolada, pois perdemos referência do que acontece na página justamente por se tratar de um Web View.

Experiência do usuário

Um Web View ainda não é um aplicativo.

Desenvolver para web e desenvolver para aplicativo são coisas bem diferentes, justamente por se tratarem de ambientes completamente diferentes. Deve ser visto que um Web View é apenas uma “simulação” de uma página na web. Da mesma forma que bugs podem acontecer, a experiência do usuário também não é a mesma.

Quando se constrói um aplicativo, as próprias ferramentas e frameworks utilizados são optimizados para funcionamento dentro de um ambiente mobile. É muito mais fluído, a perfomance é muito melhor, e trazem ao usuário a mesma experiência que ele tem ao utilizar seu dispositivo naturalmente.

Este é até o grande diferencial de um aplicativo: a experiência do usuário. Por mais que pareçam pequenos detalhes, na prática, isso é uma grande diferença para o usuário. Uma boa experiência do usuário: trás mais confiança no seu produto, mantém o usuário por mais tempo na aplicação, e consequentemente gera uma conversão melhor.

Então, quando usar uma Web View?

Geralmente utilizamos Web View em conteúdos “estáticos” que trazem informação importante ao usuário e deve ser mantida sempre atualizada, como, por exemplo, uma página de política de privacidade. Este, sim, é um exemplo seguro de uso para uma Web View.

Mas, é claro que construir um app é custoso. Se trata mesmo de uma aplicação completamente nova, portanto, assim como tudo em desenvolvimento de software, deve-se sempre pensar no custo benefício. Seu projeto está disposto a aceitar os riscos? O quão importante é atrair o cliente para o seu produto? São essas as reais perguntas que devem ser feitas durante a escolha de desenvolvimento com Web View ou um App Nativo.

Quer discutir um pouco mais esse caso com a gente? Participe do nosso canal do Discord e acompanhe nossos conteúdos!