Incorporar conteúdo da Web ao app como conteúdo principal ou de apoio

O Android permite que você aproveite o poder da Web no seu app. Assim, você pode se beneficiar da flexibilidade e da eficiência de mostrar determinados tipos de conteúdo.

Como incorporar conteúdo usando WebView

A API WebView dá acesso aos recursos de um mininavegador para mostrar conteúdo da Web no seu app. Assim, você pode oferecer experiências da Web como parte principal ou de suporte do app, como mostrado na Figura 1.

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 1. Conteúdo da Web incorporado ao app com objetos WebView como conteúdo principal (à esquerda) e de suporte (à direita).

O que o WebView pode fazer

Você pode fazer o seguinte com WebView no seu app:

  • Web incorporada: um WebView é integrado à interface do usuário de um app como um componente, como um botão ou campo de texto.

  • Carregar conteúdo: o WebView pode carregar conteúdo da Web de várias fontes:

    • URLs remotos: ele pode buscar e exibir páginas da Web da Internet, como um navegador comum.
    • Arquivos locais: ele pode carregar arquivos HTML, CSS e JavaScript armazenados nos recursos do app.
    • Conteúdo gerado dinamicamente: o app pode gerar conteúdo HTML dinamicamente e fornecê-lo ao WebView.
  • Renderização: o WebView usa o mecanismo do navegador para analisar e renderizar o HTML, o CSS e o JavaScript, mostrando a página da Web resultante na área designada na interface do app.

  • Executar JavaScript: o WebView pode executar código JavaScript no contexto da página da Web carregada. Isso permite interações e atualizações dinâmicas no WebView.

  • Interagir com o app: é aqui que o WebView fica mais eficiente. Ele permite a comunicação bidirecional entre a página da Web e o app.

    • Código JavaScript para o app: o código JavaScript em execução em um WebView pode chamar APIs de host do app, permitindo o acesso a recursos do dispositivo, como câmera, GPS ou sensores.

    • Código do app para JavaScript: o app também pode injetar código JavaScript em um WebView, manipular o conteúdo da página da Web ou responder a eventos acionados por ela.

Como o WebView é diferente de um navegador

Um WebView é um componente altamente personalizado que fornece a funcionalidade principal de uma janela para a Web. Ao contrário de um navegador, que oferece uma barra de navegação e outros elementos de interface do usuário para navegar na Web de forma mais ampla, a experiência geral de uma WebView é moldada pelo design e pela finalidade do app.

Para entender melhor como o WebView é diferente dos navegadores padrão, consulte as explicações a seguir:

Interface: um WebView é usado para exibir conteúdo da Web e não tem um cabeçalho ou uma interface próprios, como a maioria dos outros navegadores comuns, por exemplo, um botão home, uma barra de endereço ou um menu de configurações.

Recursos: muitos navegadores têm recursos integrados para melhorar a experiência de navegação, como favoritos, permissões ou histórico.

Atualizações: como o Android WebView é um serviço do sistema no Android, as atualizações são enviadas e integradas aos apps automaticamente todos os meses. Os navegadores dependem das atualizações dos apps correspondentes e, em seguida, de os usuários finais aplicarem a atualização nos dispositivos.

Primeiros passos

Para saber como usar o WebView no seu app, consulte o documento Criar apps da Web no WebView.

Outros recursos

Para desenvolver páginas da Web para dispositivos Android usando objetos WebView ou guias personalizadas, consulte os seguintes documentos: