Usar conteúdo da Web no app Android

O Android permite que você aproveite o poder da Web nos seus apps. Assim, você pode aproveitar a flexibilidade e a eficiência de exibir determinados tipos de conteúdo.

Isso permite integrar o conteúdo da Web ao seu app Android, como exibir um feed de notícias, mostrar tutoriais interativos, veicular anúncios ou até mesmo hospedar um minijogo sem precisar criar tudo do zero. Pense nela como uma janela para a Internet dentro do seu app. Há duas maneiras de incorporar conteúdo da Web ao seu app:

  • WebView: mostra o conteúdo da Web que você controla inline quando quer um alto grau de flexibilidade para personalizar ou atualizar a interface.
  • Custom Tabs: uma experiência completa de navegação no app, com tecnologia do navegador padrão do usuário (consulte a compatibilidade do navegador), para quando os usuários clicarem em um link e você quiser que eles permaneçam no app, em vez de saírem para um navegador externo, com grande parte da experiência de navegação pronta para uso.
App Android aberto no Google Play, com a visualização da Web principal destacada. Guia personalizada aberta na página da Web do Android para desenvolvedores, em destaque.
Figura 1. `WebView` (à esquerda) e `Guia personalizada` (à direita) destacadas.

Por que incorporar conteúdo da Web?

Há vários benefícios em incorporar conteúdo da Web ao seu app:

  • Eficiência: reutilize o código do seu site. Aproveite as tecnologias e o conteúdo da Web que já existem.
  • Integração: use conteúdo externo de provedores terceirizados, como mídia e anúncios, no seu app.
  • Flexibilidade: atualize o conteúdo de forma dinâmica sem se limitar a interfaces predefinidas ou sem lançar atualizações do app.

Quando usar o conteúdo da Web?

Há três casos de uso principais para usar a Web no seu app Android:

1. Incorporar conteúdo da Web ao app como conteúdo principal ou de suporte: use WebView.

  • Mostre seu próprio conteúdo da Web inline como uma experiência principal em que você quer um alto grau de flexibilidade para personalizar ou atualizar a interface.
  • Exibir outros conteúdos, como anúncios, termos e regulamentos legais ou outros conteúdos de terceiros inline ou como uma janela na experiência no app.
App Android aberto no Google Play, com a visualização da Web principal destacada em uma
  caixa vermelha App Android aberto com texto de apoio dentro de uma caixa vermelha.
Figura 2. Conteúdo da Web incorporado ao app com `WebView`s como conteúdo principal (à esquerda) e de suporte (à direita).

2. Navegação no app usando Custom Tabs ou WebView para casos de uso mais avançados

  • Oferecer uma experiência completa de navegação no app para quando os usuários clicarem em um link e você quiser que eles permaneçam no app, em vez de saírem para um navegador externo.
    • Observação: para dispositivos de tela grande, como tablets e dobráveis, há outras opções para ajudar os apps a aproveitar o espaço extra:
    • Os apps podem abrir links da Web em tela dividida usando o recurso de iniciar uma experiência adjacente de várias janelas. Isso permite que os usuários realizem várias tarefas entre o app e um navegador ao mesmo tempo. OU
    • O Custom Tabs tem uma opção de painel lateral que pode ser aberta na mesma tarefa, mas ao lado do conteúdo do app.
  • O Custom Tab é fornecido pelo navegador padrão do usuário, para navegadores que oferecem suporte a Custom Tabs.
    • Embora seja possível usar um WebView e oferecer uma experiência de navegação no app altamente personalizável, recomendamos o Custom Tabs para uma experiência de navegador pronta para uso e uma transição perfeita quando um usuário quiser abrir um link da Web no navegador.
Página da Web com link no app na caixa vermelha à esquerda e um navegador no app mostrado à
  direita.
Figura 3. Clicar em um link no app (à esquerda) e abrir um navegador no app (à direita).

3. Fluxos de login ou autenticação no app

A abordagem sugerida pelo Android é criar seus fluxos de login ou autenticação usando o Credential Manager. Se você ainda precisar usar a Web incorporada para essas experiências, siga as orientações abaixo:

  • Alguns apps usam WebViews para oferecer fluxos de login aos usuários, incluindo o uso de um nome de usuário e uma chave de acesso (ou senha) específicos para o app. Isso permite que os desenvolvedores unifiquem os fluxos de autenticação em várias plataformas.
  • Ao vincular a um provedor de identidade ou experiência de login de terceiros, como "Fazer login com…", as Custom Tabs são a melhor opção. Iniciar uma Custom Tab ajuda a proteger a credencial do usuário, mantendo-a isolada no site de terceiros.

Para mais informações sobre o uso de WebViews para autenticação, consulte Autenticar usuários com o WebView. Para iniciar uma Custom Tab, consulte Visão geral das guias personalizadas do Android.

Campo de login no app com WebView à esquerda. Login de terceiros com guia personalizada à direita.
Figura 4. Um campo de login no app (à esquerda) e um login de terceiros aberto em uma guia personalizada (à direita).