安卓USB开发教程 <三> USB Accessory

USB Accessory(配件模式)

USB 配件模式允许用户连接专为 Android 设备设计的 USB 主机硬件。配件必须遵守 Android Accessory Development Kit 文档中列出的 Android 配件协议。 这使得 Android 设备无法充当 USB 主机时仍然可以与 USB 硬件交互。 当 Android 设备处于 USB 配件模式时,所连接的 Android USB 配件充当主机,为 USB 总线供电,并枚举所连接的设备。 Android 3.1(API 级别12)支持 USB 配件模式,该功能也被以附加组件库的方式回溯到 Android 2.3.4(API 级别10),以支持更广泛的设备。前提是厂商必须在系统镜像中添加附加组件库。

选择正确的 USB Accessory API 函数

尽管 USB accessory API 函数在 Android 3.1 引入到平台,通过使用 Google APIs 附加库的方式用在 Android 2.3.4 上。由于这些 APIs 使用外部库的方式回溯,有两个包可以导入来支持 USB 配件模式。根据你要支持的安卓设备,您可能要使用一个库而不是另一个:

com.android.future.usb: 为了在 Android 2.3.4 中支持 USB accessory 模式,Google APIs add-on library 包括回溯的 USB accessory  API,它们包含在此命名空间中。 Android 3.1 还支持在此命名空间中导入和调用类,以支持使用附加库编写的应用程序。 这个附加库是围绕 android.hardware.usb accessory API 的简版 wrapper,不支持USB主机模式。 如果您想支持最广泛的支持 USB accessory 模式的设备,请使用附加库并导入此软件包。 重要的是要注意,并非所有的 Android 2.3.4 设备都需要支持 USB 配件功能。 每个单独的设备制造商决定是否支持此功能,这就是为什么必须在 manifest 文件中声明它。
android.hardware.usb: 此命名空间包含在 Android 3.1 中支持 USB accessory 模式的类。 该软件包作为 framework API 的一部分,Android 3.1 支持 USB accessory 模式,而不需要附加库。 如果您只关心具有 USB accessory 模式硬件支持的 Android 3.1 或更新版本,您可以在清单文件中声明使用此软件包。

安装 Google APIs 附加库

如果要安装该附加库,可以通过使用 SDK Manager 安装 Google API Android API 10 软件包。有关安装附加库的更多信息,请参阅  Installing the Google APIs Add-on

API 概述

由于附加库是 framework API 的 wrapper,因此支持 USB accessory 功能的类很相似。 即使您正在使用附加库,也可以使用 android.hardware.usb 的参考文档。

Note:但是,您应该注意的附加库和 framework API 之间存在较小的用法差异。
下表描述支持 USB accessory API 的类:
Class Description
UsbManager 允许枚举以及与已连接 USB 配件通讯
UsbAccessory 表示USB 配件,包含访问其标识信息的方法

附加库和平台 APIs 的使用差别

在使用 Google APIs 和平台 APIs 之间有两处使用区别。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值