Assim como outros componentes do projeto, o código fonte de três projetos Android estão disponíveis na organização Tact-Tiles no GitHub:
- AndroidAPI: Biblioteca para Android para criar aplicativos compatíveis com a tecnologia Tact-Tiles.
- AndroidRuntime: Aplicativo Android que faz a conexção entre a luva Helena e os aplicativos compatíveis.
- Touché: Aplicativo oficial para troca de mensagens de texto local, uma pessoa com a luva e outra com o celular, no mesmo ambiente.
- Baixar o Android Studio e instalar seguindo as instruções no site.
- Baixar os repositórios AndroidAPI e Touché (como exemplo)
- Descompactar ambos os arquivos gerando os diretórios
AndroidAPI-mastereTouche-master - O projeto AndroidAPI é dependência do projeto Touché, portanto a mesma deve estar configurada. Para isso verifique se o caminho para a Biblioteca, definido na linha
4do aquivoTouche-master/settings.gradle, está correto.- Caso o diretório da biblioteca seja
AndroidAPI-masterentão a linha deverá ser:
project(':ttapi').projectDir = new File(settingsDir, '../AndroidAPI-master/ttapi') - Caso o diretório da biblioteca seja
- No Android Studio abra o projeto
Touche-master- Caso apareça uma pop-up dizendo
Invalid VCS root mappingignore - Caso apareça o erro:
Error:Failed to find target with hash string 'android-25' in: /home/andy-/Android/Sdk Install missing platform(s) and sync project1. Clique em `Install missing platform(s) and sync project` e prossiga baixando a versão 25 do android para compilar o projeto- Caso apareça o erro:
Error:Failed to find Build Tools revision 25.0.2 Install Build Tools 25.0.2 and sync project1. Clique em `Install Build Tools 25.0.2 and sync project` e prossiga baixando a versão 25.0.2 das ferramentas- Caso apareça o erro:
Error:Project :app declares a dependency from configuration 'compile' to configuration 'default' which is not declared in the descriptor for project :ttapi.- Edite o arquivo
Touche-master/settings.gradle- Vá em
Tools > Android > Sync Project with Graddle Files
- Vá em
- Caso apareça o erro:
Error:(25, 13) Failed to resolve: com.android.support.constraint:constraint-layout:1.0.2 Upgrade plugin to version 2.3.3 and sync project1. Clique em `Upgrade plugin to version 2.3.3 and sync project`- Caso apareça o erro:
Error:(25, 13) Failed to resolve: com.android.support.constraint:constraint-layout:1.0.2 Install artifact and sync project1. Clique em `Install artifact and sync project` - Caso apareça uma pop-up dizendo
- Navegue pela arvore do projeto até o arquivo
app > java > com.tacttiles.touche > ToucheMainActivity - Nesse arquivo você verá a estrutura básica de como programar a luva, ao criar um novo projeto compatível tente manter o mesmo estilo.
- Crie um objeto do tipo
Glove:glove = new Glove(); - Para a API ter acesso ao aplicativo
Tact-Tiles(AndroidRuntime) chame o métodoconnectpassando o contexto da aplicação:glove.connect(getApplicationContext());. Esse método irá fazer a conexção entre o seu aplicativo e o aplicativo servidor, quando a luva se conectar ao celular você será notificado pelo eventoGlove.GloveListener.onDeviceFound(). - Para receber eventos da API, registre uma instancia de
Glove.GloveListener. - No encerramento de sua atividade (
onDestroy()) não se esqueça de chamar:
glove.getDevice().powerOff();
glove.getDevice().getServiceConnection().disconnect();
- A documentação da API está disponível no site https://tact-tiles.github.io/AndroidAPI/
- Os eventos recebidos estão descritos na classe Glove.GloveListener e Device.DeviceListener
- As principais ações realizadas pelos objetos
GloveeDevicesão:glove.draw(): desenha um texto na luvaglove.getDevice().powerOff(): desliga a luvaglove.getDevice().setTouchSensibility(int sensibility): define a sensibilidade ao toqueglove.getDevice().vibrateDevice(int times, int duration): vibra o dispositivo