Visão geral de host e acessório USB
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
O Android oferece suporte a vários periféricos USB e acessórios USB
(hardware que implementa o protocolo de acessório Android) usando dois modos: acessório USB
e host USB. No modo de acessório USB, o hardware USB externo funciona como
o host USB. Exemplos de acessórios podem incluir:
- controles de robótica
- bases
- equipamento de diagnóstico e música
- quiosques
- leitores de cartão
e muito mais. Isso permite que dispositivos Android que não têm recursos de
host interajam com hardware USB. Os acessórios
USB do Android precisam ser
projetados para funcionar com dispositivos com tecnologia Android e aderir ao Protocolo de comunicação
de acessórios do Android. No
modo host USB, o dispositivo Android funciona como host. Exemplos de dispositivos
incluem câmeras digitais, teclados, mouses e controles de jogos. Os dispositivos USB
projetados para uma ampla variedade de apps e ambientes ainda podem
interagir com apps Android que conseguem se comunicar corretamente com o
dispositivo.
A Figura 1 mostra as diferenças entre os dois modos. Quando o dispositivo Android está no modo host, ele atua como o host USB e alimenta o barramento. Quando o
dispositivo Android está no modo de acessório USB, o hardware USB conectado (nesse caso, um
acessório USB Android) atua como o host e alimenta o barramento.

Figura 1. Modos de host e acessório USB
Os modos de acessório e host USB são diretamente compatíveis com o Android 3.1 (API de nível
12) ou plataformas mais recentes. O modo de acessório USB também tem backport para o Android 2.3.4
(API de nível 10) como uma biblioteca de complementos para oferecer suporte a uma variedade maior de dispositivos.
Os fabricantes de dispositivos podem escolher se querem ou não incluir a biblioteca de complementos na
imagem do sistema do dispositivo.
Observação:o suporte aos modos de host e acessório USB depende do
hardware do dispositivo, independente do nível da plataforma. É possível filtrar por dispositivos
com suporte a host e acessório USB usando um
elemento <uses-feature>
.
Consulte a documentação do acessório e
host USB para mais detalhes.
Considerações sobre depuração
Ao depurar apps que usam recursos de acessório ou host USB, é provável
que você tenha um hardware USB conectado ao dispositivo Android. Isso
evita que você tenha uma conexão adb
com o dispositivo Android
usando USB. Você ainda pode acessar o adb
com uma conexão de rede. Para ativar adb
em uma conexão de rede:
- Conecte o dispositivo Android por USB ao computador.
- No diretório
platform-tools/
do SDK, insira adb tcpip 5555
no
prompt de comando.
- Insira
adb connect <device-ip-address>:5555
. Agora, você deve estar conectado ao
dispositivo Android e pode emitir os comandos comuns do adb
, como
adb logcat
.
- Para configurar seu dispositivo para escutar no USB, insira
adb usb
.
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-07-26 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-07-26 UTC."],[],[],null,["# USB host and accessory overview\n\nAndroid supports a variety of USB peripherals and Android USB accessories\n(hardware that implements the Android accessory protocol) through two modes: USB\naccessory and USB host. In USB accessory mode, the external USB hardware acts as\nthe USB host. Examples of accessories might include:\n\n- robotics controllers\n- docking stations\n- diagnostic and musical equipment\n- kiosks\n- card readers\n\nand many more. This gives Android-powered devices that don't have host\ncapabilities the ability to interact with USB hardware. Android\nUSB accessories must be\ndesigned to work with Android-powered devices and must adhere to the [Android\naccessory communication protocol](http://accessories.android.com/demokit). In\nUSB host mode, the Android-powered device acts as the host. Examples of devices\ninclude digital cameras, keyboards, mice, and game controllers. USB devices that\nare designed for a wide range of applications and environments can still\ninteract with Android applications that can correctly communicate with the\ndevice.\n\nFigure 1 shows the differences between the two modes. When the Android-powered\ndevice is in host mode, it acts as the USB host and powers the bus. When the\nAndroid-powered device is in USB accessory mode, the connected USB hardware (an\nAndroid USB accessory in this case) acts as the host and powers the bus.\n\n**Figure 1.** USB Host and Accessory Modes\n\nUSB accessory and host modes are directly supported in Android 3.1 (API level\n12) or newer platforms. USB accessory mode is also backported to Android 2.3.4\n(API level 10) as an add-on library to support a broader range of devices.\nDevice manufacturers can choose whether or not to include the add-on library on\nthe device\\\\'s system image.\n\n**Note:** Support for USB host and accessory modes are ultimately dependant on\nthe device\\\\'s hardware, regardless of platform level. You can filter for devices\nthat support USB host and accessory through a\n[`\u003cuses-feature\u003e`](/guide/topics/manifest/uses-feature-element) element.\nSee the USB [accessory](/develop/connectivity/usb/accessory) and\n[host](/develop/connectivity/usb/host) documentation for more details.\n\nDebug considerations\n--------------------\n\nWhen debugging applications that use USB accessory or host features, you most\nlikely have USB hardware connected to your Android-powered device. This\nprevents you from having an `adb` connection to the Android-powered device\nusing USB. You can still access `adb` over a network connection. To enable `adb`\nover a network connection:\n\n1. Connect the Android-powered device using USB to your computer.\n2. From your SDK `platform-tools/` directory, enter `adb tcpip 5555` at the command prompt.\n3. Enter `adb connect \u003cdevice-ip-address\u003e:5555` You should now be connected to the Android-powered device and can issue the usual `adb` commands like `adb logcat`.\n4. To set your device to listen on USB, enter `adb usb`."]]