As guias personalizadas são um recurso dos navegadores Android que oferece aos desenvolvedores de apps uma maneira de adicionar uma experiência de navegador personalizada diretamente no app.
Carregar conteúdo da Web faz parte dos apps para dispositivos móveis desde o início dos smartphones, mas as opções mais antigas podem apresentar desafios para os desenvolvedores. Iniciar o navegador real é uma troca de contexto pesada para os usuários que não é personalizável, enquanto as WebViews não oferecem suporte a todos os recursos da plataforma da Web, não compartilham estado com o navegador e adicionam sobrecarga de manutenção.
Com as guias personalizadas, os usuários podem continuar no app enquanto navegam, aumentando o engajamento e reduzindo o risco de abandono. As guias personalizadas são ativadas diretamente pelo navegador preferido do usuário e compartilham automaticamente o estado e os recursos oferecidos por ele. Você não precisa escrever códigos personalizados para gerenciar solicitações, concessões de permissão ou armazenamentos de cookies.
O que as guias personalizadas podem fazer?
Ao usar uma guia personalizada, o conteúdo da Web é carregado em qualquer mecanismo de renderização que alimenta o navegador preferido do usuário. Qualquer recurso de API ou plataforma da Web está disponível lá e na sua guia personalizada. A sessão de navegação, as senhas salvas, as formas de pagamento e os endereços aparecem da mesma forma que eles já estão acostumados.
O que posso personalizar em uma guia personalizada?
Bastante! Com as guias personalizadas, você tem controle preciso sobre grande parte do chrome do navegador e da experiência do usuário. No app, você inicia uma guia personalizada usando uma Intent. Quando essa intent é chamada, você pode adicionar vários atributos à CustomTabIntent para ter a experiência exata que quer. Confira algumas personalizações que você pode adicionar:
- Animações de entrada e saída personalizadas para combinar com o restante do app
- Modificar a cor da barra de ferramentas para combinar com o branding do app
- Consistência de cores que pode permanecer no seu app, mesmo que o usuário alterne entre temas claros e escuros
- Ações e entradas personalizadas na barra de ferramentas e nos menus do navegador
- Controlar a altura de abertura da guia personalizada, permitindo coisas como streaming de vídeos enquanto interage com sua loja on-line
Além disso, os usuários podem minimizar uma guia personalizada para interagir com o app subjacente e restaurá-la a qualquer momento sem perder o progresso para retomar a navegação. Isso oferece aos usuários uma alternativa para fechar a guia personalizada, permitindo que eles façam várias tarefas ao mesmo tempo entre a Web e o app nativo. O recurso fica ativado por padrão para guias personalizadas.
Isso está longe de tudo. As guias personalizadas são muito eficientes e estão em desenvolvimento ativo. Cada navegador precisa adicionar suporte a esses recursos à medida que eles ficam disponíveis. Embora quase todos tenham algum nível de suporte, é importante saber o que pode ou não estar disponível nos navegadores dos usuários. Consulte a tabela de comparação de recursos para verificar rapidamente a disponibilidade dos diferentes recursos nos navegadores Android mais usados.
Você pode testar isso agora com nossa amostra no GitHub.
Quando devo usar guias personalizadas?
Não existe uma única maneira "correta" de carregar conteúdo da Web. Em algumas situações, a WebView é a tecnologia certa a ser usada. Por exemplo, se você estiver hospedando exclusivamente seu próprio conteúdo no app ou se precisar injetar JavaScript diretamente do app. Se o app direcionar as pessoas para URLs fora dos domínios, o estado compartilhado integrado nas guias personalizadas provavelmente será uma opção melhor. Outras vantagens das guias personalizadas:
- Segurança: as guias personalizadas usam a Navegação segura do Google para proteger o usuário e o dispositivo contra sites perigosos.
- Otimização de performance:
- Pré-aquecimento do navegador em segundo plano, evitando o roubo de recursos do aplicativo.
- Acelere o tempo de carregamento da página carregando URLs especulativamente com antecedência.
- Gerenciamento do ciclo de vida: os apps que abrem uma guia personalizada não são removidos pelo sistema durante o uso da guia. A importância da guia personalizada é elevada ao nível de primeiro plano.
- Modelo de permissões e cookie jar compartilhados para que os usuários não precisem fazer login em sites a que já estão conectados nem conceder novamente permissões que já foram concedidas.
- Recursos do navegador, como o preenchimento automático para melhorar a conclusão de formulários, estão disponíveis imediatamente.
- Os usuários podem voltar ao app com um botão integrado.
Guias personalizadas x Atividade Confiável na Web
As atividades confiáveis na Web estendem o protocolo das guias personalizadas e compartilham a maioria dos benefícios dele. Em vez de fornecer uma interface personalizada, ele permite que os desenvolvedores abram uma guia do navegador sem nenhuma interface. Recomendado para desenvolvedores que querem abrir o próprio App Web Progressivo em tela cheia dentro do próprio app Android.
Onde as guias personalizadas estão disponíveis?
As guias personalizadas são um recurso compatível com navegadores na plataforma Android. Ele foi introduzido originalmente pelo Chrome, na versão 45. A maioria dos navegadores Android oferece suporte ao protocolo.
Estamos buscando feedback, dúvidas e sugestões sobre esse projeto. Por isso, incentivamos você a registrar problemas em crbug.com e fazer perguntas no Twitter @ChromiumDev.
Saiba mais
Para dúvidas, confira a tag chrome-custom-tabs no StackOverflow.