Artigo do tipo Exemplos Práticos
Autores:Ricardo Roberto Leme, Ian Ferreira Costa,
Lucas Mandotti M. Soares e Luciana Aparecida M. Zaina
Porque este artigo é útil
Este artigo apresenta os passos necessários para utilizarmos os recursos de interface multimodal presentes na maioria dos smartphones, como, por exemplo, o reconhecimento de movimentos e de voz, através do desenvolvimento de um aplicativo com o uso da plataforma disponibilizada pelo Google, o Android SDK. A disponibilização de diversas formas de interação permite uma melhor adaptação do usuário ao aplicativo. Assim, este recurso também deve ser considerado quando visamos aprimorar a acessibilidade da solução em construção. Um aplicativo com diferentes formas de interação pode viabilizar o uso por pessoas com diferentes tipos de deficiências.

A interação multimodal é a combinação de múltiplos sensores de entrada e/ou saída de informações que possibilitam a interação do usuário com o software, viabilizando a escolha da modalidade que deseja (voz, gestos, toque, etc.) e ainda alternar entre elas.

Assim, podemos dizer que um sistema possui recursos multimodais quando permite ao usuário usufruir de suas funções interagindo de formas diferentes com o aparelho. Atualmente a maior parte dos aplicativos para smartphones utiliza somente um meio de interação com o usuário, o touch. Esta tende a prender a atenção do usuário no aparelho, o impossibilitando de realizar outras ações enquanto interage com a aplicação. Logo, o uso de outras formas de interação em um mesmo programa possibilita uma maior liberdade ao usuário, pois este pode escolher aquela que o beneficia em um determinado momento, como por exemplo, utilizar a voz quando estiver com as mãos ocupadas.

O Android possui várias classes para implementar recursos multimodais, que permitem, por exemplo, a leitura dos dados fornecidos pelos sensores existentes no aparelho e também a manipulação das funções de áudio. A partir dessas classes o desenvolvedor pode facilmente alcançar o objetivo de criar aplicativos mais adaptáveis às necessidades do usuário final.

A classe para manipulação de sensores disponibilizada para desenvolvimento de programas em Android é a SensorManager e a utilizaremos para detectar e diferenciar os movimentos realizados com o aparelho. Em nosso exemplo, somente será necessário reconhecer quatro movimentos bem definidos. Sendo assim, optaremos pelo acelerômetro, que possui uma leitura mais simples e precisa, quando comparado com o giroscópio, detectando a movimentação do aparelho em torno de três eixos. Para leitura dos dados de um sensor geralmente adota-se a classe SensorManager, que fornece dois métodos abstratos que devem ser implementados: onSensorChanged() e onAccuracyChanged(). Estes métodos serão utilizados para captura dos dados do sensor e serão explicados no decorrer do artigo.

O aplicativo empregará também a classe MediaPlayer, para a manipulação dos arquivos de áudio que serão executados conforme a movimentação do aparelho. Você notará que a emissão de sons como forma de resposta às ações do usuário é somente um exemplo de função que pode ser executada. A detecção de movimentos pode ser usada de forma muito ampla dentro de qualquer aplicativo.

O maior desafio na utilização de uma interface multimodal com detecção de movimentos é configurá-la a fim de que o usuário possa se adaptar a todos os movimentos necessários para usufruir das funções do aplicativo. Assim, eles devem ser simples e facilmente diferenciados, para que não ocorra nenhum erro no reconhecimento da função a ser acionada.

Na aplicação exemplo, o usuário poderá optar por um dos dois tipos de sons disponíveis através de um comando de voz, e então, quando realizar um movimento de rotação do aparelho para a direita, esquerda, frente ou para traz, um novo som será reproduzido.

Configurando o Android SDK

O primeiro passo para iniciar o desenvolvimento de uma aplicação Android é fazer o download do pacote para desenvolvedores no site oficial (ver seção Links). Anteriormente não era disponibilizado o pacote de desenvolvimento completo, sendo necessário baixar o Android SDK, instalar um plug-in na IDE escolhida e então configurá-la para reconhecê-lo. Atualmente o Google disponibiliza o Eclipse em uma versão plug-and-play já configurada para uso. Assim, após a descompactação do arquivo (que deverá estar no formato ZIP), basta abrir o Eclipse localizado na pasta com este nome.

O Eclipse é a plataforma de desenvolvimento recomendada pelo Google para o desenvolvimento de aplicações Android e recebe o suporte às atualizações assim que elas são disponibilizadas. Mesmo assim, você pode utilizar outras IDEs, como o ...

Quer ler esse conteúdo completo? Tenha acesso completo