Navegação

Experimente trabalhar com o Compose
O Jetpack Compose no Wear OS é o kit de ferramentas de interface recomendado para o Wear OS.

Depois de criar telas individuais para cada jornada do usuário, você pode ter algumas telas verticais ou únicas. Em seguida, você precisa decidir como projetar essas telas para que funcionem juntas e como implementar a navegação.

Design

Mantenha a hierarquia do app simples e linear, conforme indicado nas diretrizes de design de apps.

Para começar, o iniciador do app precisa abrir a jornada do usuário mais comum. Crie cada jornada do usuário com o conteúdo mais importante no topo. Para contêineres verticais, use a parte de baixo para vincular a outras jornadas do usuário menos comuns e às configurações.

O conteúdo principal é a atividade atual ou a estatística de resumo mais importante.
Figura 1. Mantenha o conteúdo mais importante na parte de cima dos contêineres verticais.

Quando os usuários acessarem uma das suas telas, verifique se eles podem usar o gesto de deslizar para dispensar para navegar pela backstack.

Implementar a navegação

Ao implementar a navegação, você tem três opções, descritas nas seções a seguir:

  • Somente atividades, que é a abordagem recomendada
  • Atividades e fragmentos
  • Jetpack Navigation

Somente atividades

Como as telas verticais geralmente têm um nível de profundidade, é possível implementar todas as telas usando atividades e sem usar fragmentos.

Recomendamos muito essa abordagem. Ele simplifica seu código, e as atividades oferecem suporte automático ao deslizar para dispensar. Isso também simplifica a implementação do modo ambiente.

Observação:faça com que suas atividades herdem de uma ComponentActivity se você não estiver usando fragmentos. Os outros tipos de atividade usam elementos de interface específicos para dispositivos móveis, que não são necessários para o Wear OS.

Atividades e fragmentos

É possível usar fragments com atividades no app para Wear OS. No entanto, não recomendamos isso, já que não há uma vantagem clara em usar fragments para criar uma arquitetura superficial e simples.

Observação:se você estiver usando fragmentos, faça com que eles herdem de FragmentActivity. Os outros tipos de atividade usam elementos de interface específicos para dispositivos móveis, que não são necessários para o Wear OS.

Algumas dificuldades de usar fragmentos no app para Wear OS incluem:

  • Você precisa implementar o gesto de deslizar para dispensar. Caso contrário, quando o usuário desliza, ele sai de todo o app.
  • Se você estiver usando AmbientMode, personalize para que ele funcione corretamente. AmbientMode é definido na atividade, então você precisa considerar isso ao implementar fragmentos.

Para oferecer suporte ao gesto de deslizar para dispensar com fragmentos, você precisa unir a visualização que contém o fragmento na classe SwipeDismissFrameLayout. Consulte O gesto de deslizar para dispensar para mais informações. Isso oferece aos usuários uma experiência consistente com seu app.

Observação:ao usar fragmentos, use FragmentManager.add em vez de FragmentManager.replace para oferecer suporte ao gesto de deslizar para dispensar. Isso garante que seu fragmento anterior renderize no fragmento da camada superior enquanto é dispensado.

Jetpack Navigation

O Jetpack Navigation pode funcionar no Wear OS, mas tem as mesmas desvantagens dos fragmentos. Isso adiciona trabalho de desenvolvimento e, como a hierarquia de um app Wear OS geralmente é rasa e linear, não oferece muitas vantagens. Uma abordagem somente de atividade é a melhor opção.

Para aproveitar ao máximo a navegação do Jetpack, faça o seguinte:

  • Verifique se cada fragmento usa um SwipeDismissFrameLayout como raiz e use manualmente a ação de dispensar para voltar no gráfico de navegação.
  • Implemente um FragmentNavigator personalizado que renderiza fragmentos um em cima do outro.