Gestos com uma mão

Os smartwatches são ideais para uso em trânsito, mas operá-los se torna difícil quando os usuários estão com as mãos ocupadas. Para resolver esse problema, o Wear OS 7 apresenta uma nova estrutura de gestos com uma mão para OEMs e uma API Gesture para desenvolvedores que usam o Jetpack Compose no Wear OS. Embora seja adotada exclusivamente por dispositivos Pixel Watch (Pixel Watch 3 e mais recentes), essa estrutura subjacente está disponível para todos os fabricantes. Ao oferecer suporte a essa API, o suporte a gestos do seu app pode ser escalonado automaticamente em todo o ecossistema à medida que outros OEMs aderem.

Para criar experiências integradas e sem toque, siga estas diretrizes para determinar se os gestos com uma mão são adequados para a experiência do seu app.

Gestos e ações compatíveis

A estrutura de gestos do Wear OS oferece suporte a dois tipos de gestos: ação principal e ação de dispensar. No Pixel Watch, a ação principal é mapeada para o gesto de pinça dupla, e a ação de dispensar é mapeada para o gesto de virar o pulso.

Pinça dupla:aciona a ação principal.
Gesto de virar o pulso:aciona a ação de dispensar.

Ação principal

A ação principal precisa ser mapeada para a tarefa principal, como atender uma chamada telefônica ou alternar a reprodução ou pausa nos controles de mídia, que um usuário pode concluir em uma tela ou página. Se a página for rolável, seu app poderá mapear apenas um elemento de interface por vez para a ação principal.

Atender uma chamada telefônica.
Alternar a reprodução ou pausa nos controles de mídia.

Ativar o modo soneca de um alarme.
Rolar conteúdo rolável.

A pinça dupla é mais útil quando o usuário pode navegar até esse elemento de interface usando gestos, voz ou quando o elemento é aberto automaticamente (como uma notificação ou controles de mídia). Se a única maneira de navegar até o elemento de interface for por toque ou botões, a ação não será um bom caso de uso para o gesto de ação principal.

Ação de dispensar

Por padrão, a ação de dispensar é mapeada para o botão "Voltar" do sistema e navega de volta à tela anterior. Seu app pode substituir o gesto de virar o pulso para casos de uso específicos, mas essas exceções ainda precisam estar alinhadas ao conceito de dispensar, silenciar ou minimizar. Exemplos de substituições incluem silenciar uma chamada em vez de dispensá-la e fechar notificações em vez de dispensá-las ou excluí-las. Essa ação nunca deve ser mapeada para ações arbitrárias no seu app, por mais tentador que seja, porque ela quebra o modelo de usuário de usar a ação de dispensar como um indicador consistente para um comando de voltar ou dispensar.

A ação de dispensar também pode ser desativada para uma tela quando ela representa um risco devido a acionadores acidentais, como em uma tela de treino ativa ou em uma chamada de emergência. Para desativar o gesto de virar o pulso em uma determinada tela, inscreva-se na ação de dispensar, mas não faça nada com o evento de gesto enviado. Ou seja, forneça uma assinatura vazia.

Diretrizes de gestos rápidos

A estrutura de gestos do Wear OS foi projetada para processar interrupções e controles. Ela não foi projetada para permitir a navegação completa do relógio. Siga estas diretrizes para adotar gestos com uma mão no seu app:

  1. Minimize a navegação:use gestos para interações únicas , como dispensar uma notificação ou pausar e retomar a mídia.
  2. Use a rolagem com moderação:o gesto principal (pinça dupla) pode ser usado para rolar, mas essa não deve ser a experiência padrão para todo o conteúdo rolável. Só ative a rolagem por gestos se as seguintes condições puderem ser atendidas:
    • O usuário pode acessar a visualização de rolagem com uma mão ou de forma mãos-livres, como usar um gesto, comando de voz ou em uma tela que é iniciada automaticamente, como controle de mídia e navegação de mapas.
    • O conteúdo oferece valor rapidamente, como um resumo do treino, e não exige mais interação além de um único botão opcional que também pode realizar a ação de gesto principal depois de ser rolado para a visualização (como um botão de borda concluído).
  3. Evite becos sem saída:verifique se as ações de gesto não resultam em becos sem saída em que um usuário não pode prosseguir na jornada sem usar a tela touchscreen ou um botão físico.
  4. Evite ações ocultas:nunca oculte uma ação somente por gestos. Se um usuário puder realizar uma ação com uma pinça dupla, um botão visível e clicável que realiza a mesma tarefa precisa estar presente. A exceção a isso são ações universais, como um gesto de virar o pulso para voltar, em que a intenção do usuário é difícil de prever.

Fluxo de interação e feedback de gestos

Quando um gesto está disponível e é realizado pelo usuário, a seguinte sequência de eventos ocorre:

  1. Dica de gesto:quando um gesto de ação principal está disponível, uma ilustração animada de uma mão realizando o gesto é mostrada na tela, informando ao usuário qual gesto está disponível e em qual elemento de interface ele vai agir. Normalmente, as dicas não aparecem para a ação de dispensar, a menos que ela seja mapeada para um elemento de interface na tela.
  2. Feedback tátil:um feedback tátil curto e nítido é reproduzido quando a ação de gesto é processada.
  3. Feedback sonoro e visual:qualquer feedback sonoro ou visual associado a um elemento de interface que ocorre com uma interação de toque também precisa ser acionado com ações de gesto. É necessário conectar os callbacks de áudio e visuais de toque atuais do seu app a eventos de gesto para oferecer uma experiência consistente.

    Exemplo: a câmera tem um som de obturador e uma interação de botão associados que precisam ser acionados com gestos.

Dicas, instruções e configurações de gestos

Para tornar as ações de gesto detectáveis, o Pixel Watch oferece um tutorial interativo no relógio e uma estrutura de dicas na API Gesture. As configurações de gestos também são fornecidas nas configurações do sistema. No Pixel Watch, acesse Configurações > Gestos > Gestos com as mãos.

Integração do tutorial

No Pixel Watch, os usuários são apresentados aos gestos com as mãos por meio de um tutorial interativo e das Dicas do Pixel. Não é necessário criar um tutorial de gestos exclusivo no seu app. Em vez disso, aproveite as dicas contextuais fornecidas pelo Jetpack Compose no Wear OS para informar aos usuários onde os gestos estão disponíveis no seu app.

Tela do tutorial de integração de pinça dupla.
Tela do tutorial de integração de gesto de virar o pulso.

Dicas contextuais

Para ajudar os usuários a descobrir gestos no seu app, forneça dicas que associem a ação de gesto à capacidade física. Dicas sutis são mais claras e legíveis, causando obstrução mínima de outros elementos de interface.

Os tipos de dicas contextuais incluem:

  • Dica de botão
    • Aparece como um ícone animado em um elemento de interface, como um botão, ocultando temporariamente o conteúdo típico desse elemento, como um rótulo ou ícone de botão.
  • Dica flutuante
    • Um ícone animado contido em uma pequena sobreposição de bolha que aponta para o elemento de interface afetado pelo gesto. As dicas flutuantes são usadas normalmente quando o elemento de interface para o qual elas apontam é muito pequeno para conter a dica. O exemplo principal é a rolagem, em que a bolha de dica aponta para a barra de rolagem para indicar que o gesto principal vai rolar.
    • A dica pode apontar para qualquer uma das direções cardinais (para cima, para baixo, para a esquerda, para a direita).

Dica de botão

Exemplo de dica de botão

Troca com um ícone ou texto existente momentaneamente.

Dica flutuante

Exemplo de dica flutuante

Aponta para um elemento na tela que é muito pequeno para conter uma dica de botão.

Orientação de cores:

  • Dica de botão
    • Por padrão, a cor do vetor animado (AVD, na sigla em inglês) é matizada para corresponder à cor do ícone ou do texto do botão (LocalContentColor).
    • O AVD pode ser matizado para uma cor personalizada, se necessário. No entanto, geralmente, a cor precisa ser a mesma do conteúdo que ela substitui temporariamente para fornecer o contraste adequado.
  • Dica flutuante
    • A cor Tertiary é aplicada ao contêiner de dicas.
    • A cor do AVD é matizada para onTertiary.
    • É possível personalizar a cor da dica e a cor da forma de plano de fundo.

Orientação de cores da dica de botão

Exemplo de orientação sobre a cor da dica do botão

A cor do AVD corresponde à cor do ícone ou do texto do botão.

Orientação de cores da dica flutuante

Exemplo de orientação de cor de dica flutuante

O contêiner de dicas usa Tertiary e o AVD usa onTertiary.

Regras de cadência de dicas:

Para ajudar os usuários a descobrir gestos, a plataforma oferece uma frequência configurável de quantas vezes uma dica precisa ser mostrada para uma experiência. A lógica de cadência de dicas é global, e não por experiência. A estrutura de gestos do Wear OS controla a cadência e expõe uma configuração (no Pixel Watch, Gestos > Gestos com as mãos > Dicas de gestos) para que os usuários ajustem a cadência.

  • Dicas de botão
    • Na primeira inicialização de um app com uma ação de gesto ou ao atualizar um app que introduz uma ação de gesto, uma dica aparece inicialmente para essa ação pelo menos uma vez. A dica só será mostrada novamente com base na cadência definida pelo usuário (como Sempre, Diariamente e Mensalmente). As dicas são definidas como Sempre por padrão.
  • Dicas flutuantes
    • Como elas cobrem o conteúdo adjacente, as dicas flutuantes aparecem no máximo uma vez por dia por experiência. Se a cadência de dicas global estiver definida como um valor menos frequente do que uma vez por dia (Diariamente), o sistema usará essa cadência menos frequente.
Tela de configurações de dicas de gestos no Pixel Watch
Tela de configuração de dicas de gestos no Pixel Watch

Outros recursos

Para orientações do desenvolvedor sobre como implementar gestos com uma mão no seu app, consulte Criar apps para o pulso com o Wear OS.