本文译自:http://developer.android.com/guide/topics/connectivity/usb/index.html

Android通过两种模式来支持各种USB外设和Android的USB附件(实现了Android从属协议的硬件):USB从属模式和USB主机模式。在USB的从属模式中,外部的USB硬件作为USB主机。从属USB设备的例子包括机器人控制器、基座、诊断和音乐设备、读卡器等。这种没有主机能力Android设备不具备跟USB硬件进行交互的能力。Android的USB附件必须跟Android设备协同工作,并且要必须遵循Android从属模式通信协议。在USB主机模式中,Android设备做为主机。这种设备的例子包括数码相机、键盘、鼠标以及游戏控制器等。

图1.显示了这两种不同的模式。当Android设备是主机模式时,它作为USB主机和供电总线。当Android设备是USB从属模式时,被连接的USB硬件作为主机和供电总线。

图1.USB的主机模式和从属模式

USB的从属模式和主机模式在Android3.1(API Level 12)以后被直接支持。USB从属模式还可以作为一个类库添加到更广泛的设备上,以便向后兼容Android2.3.4(API Level 10)。设备制造商能够选择在它们的系统镜像中是否包含这个附件类库。

注意:对USB主机模式和从属模式的支持,最终依赖设备的硬件,而不是平台的级别。通过使用<uses-feature>元素能够过滤支持USB主机模式和从属模式的设备。

调试方面的考虑

在调试使用USB从属功能或主机功能的应用程序时,你会把USB硬件跟Android设备连接,这样妨碍你通过USB跟Android设备连接的adb连接。通过网络连接你依然能够访问adb。以下是启用基于网络连接的adb的步骤:

1.通过USB把Android设备连接到你的计算机上;

2.在你SDK的platform-tools/目录下,在命令行模式下,键入adb tcpip 5555命令;

3.键入adb connect <device-ip-address>:5555,这时你应该连接到了Android设备上,并且能够发布adb命令了,如adb logcat;

4.键入adb usb,把你的设备设置为监听USB模式。

更多相关文章

  1. Android(安卓)BLE开发小记
  2. android中singleTask的home键的问题
  3. android设备与蓝牙模块之间交互(蓝牙命令,收发)的两种方式,附DEMO下
  4. 【摘录】Linux下Android(安卓)ADB驱动安装详解
  5. Android(安卓)MVP开发模式 google 官方Mvp架构详解(转)
  6. Android手机AP模式下本机IP
  7. 深入Android(安卓)'M' Doze
  8. android 常用adb 和 adb shell 命令
  9. 【Android】19.1 SharedPreferences类

随机推荐

  1. 【DB笔试面试661】在Oracle中,在新建或重
  2. js bridge 实现原理
  3. Shell脚本中的while getopts用法小结
  4. 全文检索技术ElasticSearch使用
  5. 【js效果】倒计时
  6. 【DB笔试面试672】在Oracle中,errorstack
  7. 【DB笔试面试660】在Oracle中,在编译存储
  8. Nodejs 开发CLI必备基础依赖库
  9. CXF实现WebService入门
  10. JS 中的 Reflect 和 Proxy