Acessórios personalizados

Um acessório para Android pode ser qualquer coisa: teclado, termômetro, robô, controle de iluminação ou qualquer outra coisa que você imaginar. Todos os acessórios Android se conectam a um dispositivo Android de alguma forma. Portanto, ao criar um acessório, você precisa considerar o tipo de conexão que ele vai usar. Esta página oferece uma visão geral rápida das opções para conectar o acessório Android e uma lista de recursos para ajudar você a começar.

Conectar por USB

Um acessório que se conecta a um dispositivo Android por um cabo USB precisa oferecer suporte ao protocolo Android Open Accessory (AOA), que especifica como um acessório pode estabelecer comunicação com um dispositivo Android por USB. Devido à baixa saída de energia dos dispositivos Android, a AOA exige que o acessório funcione como um host USB, o que significa que o acessório de conexão precisa alimentar o barramento.

A AOA tem duas versões com suporte a diferentes tipos de comunicação:

  • AOAv1. Oferece suporte a comunicação de acessórios genéricos e depuração do adb.
  • AOAv2. Suporta recursos de dispositivo de interface humana (HID). Disponível no Android 4.1 (nível 16 da API) ou mais recente.

Se você usar o protocolo de acessório geral para se comunicar com o acessório (em vez do protocolo adb ou de áudio), forneça um app Android que possa detectar a conexão do acessório USB e estabelecer a comunicação.

Próximas etapas

Para começar a criar um acessório Android que usa uma conexão USB:

  • Selecione uma plataforma de hardware ou crie um dispositivo de hardware que ofereça suporte ao modo de host USB.
  • Consulte as especificações do AOA para entender como implementar esse protocolo no hardware do acessório.
  • Revise o código-fonte do firmware (<adk-src>/adk2012/board/library/ADK2/) do ADK 2012, que demonstra a implementação de um acessório usando uma conexão USB para comunicações de dados gerais e streaming de áudio.
  • Ao planejar criar um app Android que se comunique com o acessório por USB, consulte o código-fonte do app Android (<adk-src>/adk2012/app/) do ADK 2012.

Conectar por Bluetooth

Um acessório que se conecta a dispositivos Android por uma conexão Bluetooth pode usar perfis de conexão compatíveis com o Android, incluindo o Simple Serial Protocol (SSP) e o Advanced Audio Distribution Profile (A2DP). Um acessório que usa Bluetooth para se conectar a dispositivos Android precisa oferecer suporte a comunicações Bluetooth e a pelo menos um dos perfis de conexão aceitos.

Os usuários precisam ativar o Bluetooth no dispositivo Android e parear com o acessório para usá-lo. Também é possível fornecer um app Android secundário que processa comunicações especializadas, como entrada de dados ou saídas de controle, para interagir com o acessório.

Próximas etapas

Para começar a criar um acessório Android que usa uma conexão Bluetooth:

  • Selecione uma plataforma de hardware ou crie um dispositivo de hardware que ofereça suporte a comunicações Bluetooth e a um perfil de conexão compatível com Android, como SSP ou A2DP.
  • Revise o código-fonte do firmware (<adk-src>/adk2012/board/library/ADK2/) do ADK 2012, que inclui um exemplo de implementação de comunicações de dados gerais e streaming de áudio usando uma conexão Bluetooth.
  • Ao planejar a criação de um app Android que se comunique com o acessório por Bluetooth, consulte o código-fonte do app do ADK 2012 para Android (<adk-src>/adk2012/app/).

Observação:o código-fonte do ADK 2012 inclui uma pilha Bluetooth de código aberto criada para o chip CC2564 da Texas Instruments, mas foi projetada para funcionar com qualquer chip Bluetooth que ofereça suporte a uma interface host/controlador (HCI) padrão.