The Android Developer Challenge is back! Submit your idea before December 2.

Criar editores de métodos de entrada no Wear

O Wear OS by Google passa a ser compatível com métodos de entrada além da voz, estendendo a estrutura do IME (editor de método de entrada, na sigla em inglês) do Android. A estrutura do IME é compatível com teclados virtuais na tela, que permitem que os usuários insiram texto na forma de cliques em teclas, escrita à mão ou gestos.

Os usuários do Wear podem escolher entre várias opções de Entrada Remota. Essas opções incluem:

  • Ditado
  • Emoji
  • Respostas automáticas
  • Resposta inteligente
  • IME padrão

Figura 1. Métodos de entrada de amostra

O Wear vem com o IME padrão do sistema e abre as APIs IME para desenvolvedores terceiros a fim de criar IMEs personalizados para o Wear. As APIs IME usadas para dispositivos Wear são as mesmas de outros formatos, embora o uso seja um pouco diferente devido ao espaço limitado na tela.

Este documento fornece orientações que podem ajudar você a criar um IME específico para o Android Wear.

Criar um método de entrada para o Wear

A plataforma Android fornece uma estrutura padrão para criação de IMEs. Para criar um IME específico do Wear, você precisa otimizar o IME para um tamanho de tela limitado.

Para saber como criar um método de entrada para o Wear, siga o guia Como criar um método de entrada em celulares e adicione os seguintes filtros do Google Play ao seu arquivo de manifesto para torná-lo um IME específico do Wear.

Filtros IME específicos do Wear

  • Nível de API

    Se você estiver desenvolvendo um IME para o Wear, lembre-se de que o recurso é compatível apenas com o Android 6.0 (API de nível 23) e em versões posteriores da plataforma. Para garantir que seu IME só possa ser instalado em wearables compatíveis com métodos de entrada além da voz, adicione o seguinte ao manifesto do app:

        <uses-sdk android:minSdkVersion="23" />
        

    Isso indica que o app requer o Android 6.0 ou posterior. Para mais informações, consulte Níveis de API e a documentação do elemento <uses-sdk>.

  • Conjuntos de recursos do dispositivo

    Para controlar como o app é filtrado em dispositivos não compatíveis com IMEs do Wear (por exemplo, em smartphones), adicione o seguinte ao manifesto do seu app:

        <uses-feature android:required="true" android:name="android.hardware.type.watch" />
        

Invocar um método de entrada

O Wear fornece configurações no relógio que permitem ao usuário ativar vários IMEs na lista de IMEs instalados. Depois que os usuários ativam seu IME, eles podem chamá-lo a partir de:

  • Uma notificação ou um app usando a API RemoteInput.
  • Apps Wear com um campo EditText. O toque em um campo de texto posiciona o cursor no campo e exibe automaticamente o IME em foco.

Considerações gerais sobre IME

Veja o que você precisa considerar ao implementar o IME para o Wear:

  • Definir ação padrão

    RemoteInput e apps Wear esperam apenas entrada de texto de linha única. A tecla ENTER deve sempre acionar uma chamada para sendDefaultEditorAction, o que faz com que o app dispense o teclado e prossiga para a próxima etapa ou ação.

  • Usar o IME em modo de tela cheia

    Os métodos de entrada no Wear ocupam a maior parte da tela, deixando muito pouco do app visível. O uso do modo de tela cheia garante uma experiência otimizada para o usuário, independentemente da interface do usuário do app. No modo de tela cheia, o ExtractEditText fornece uma visualização espelhada do campo de texto que está sendo editado e pode ser estilizado para combinar com o restante da interface do método de entrada. Para mais detalhes sobre o modo de tela cheia, consulte InputMethodService.

  • Processar sinalizadores InputType

    Por razões de privacidade, no mínimo você deve gerenciar o sinalizador InputType TYPE_TEXT_VARIATION_PASSWORD no seu IME. Quando o IME estiver no modo de senha, verifique se o teclado está otimizado para o pressionamento de apenas uma tecla (com a correção ortográfica automática, o preenchimento automático e a entrada de gestos desativados). O mais importante é que o teclado no modo de senha precisa ser compatível com símbolos ASCII, independentemente do idioma de entrada. Para mais detalhes, consulte Como especificar o tipo de método de entrada.

  • Fornecer uma chave para alternar para o próximo método de entrada

    O Android permite que os usuários alternem facilmente entre todos os IMEs compatíveis com a plataforma. Ao implementar o IME, defina o booleano supportsSwitchingToNextInputMethod = true para permitir que o IME seja compatível com o mecanismo de alternância (para que os apps possam alternar para o próximo IME compatível com a plataforma). Para saber mais sobre como implementar a alternância entre IMEs, consulte Alternar entre subtipos de IME.