定制配件

Android 配件可以是任何东西:键盘、温度计、机器人、照明控制或任何您能想象到的东西。所有 Android 配件都以某种方式连接到 Android 设备,因此在构建配件时,您必须考虑您的配件将使用的连接类型。本页概述了连接 Android 配件的选项,并列出了可帮助您入门的资源。

通过 USB 连接

通过 USB 数据线连接到 Android 设备的配件必须支持 Android 开放配件 (AOA) 协议,该协议规定了配件如何通过 USB 与 Android 设备建立通信。由于 Android 设备的功率输出较低,AOA 要求配件充当 USB 主机,这意味着连接的配件必须为总线供电。

AOA 有两个版本,支持不同类型的通信

  • AOAv1 支持通用配件通信和 adb 调试。
  • AOAv2 支持人机接口设备 (HID) 功能。在 Android 4.1(API 级别 16)或更高版本中可用。

如果您使用通用配件协议与配件通信(而不是 adb 或音频协议),则必须提供一个 Android 应用,该应用可以检测 USB 配件的连接并建立通信。

后续步骤

要开始构建使用 USB 连接的 Android 配件

  • 选择一个硬件平台或构建一个可以支持 USB 主机模式的硬件设备。
  • 查看 AOA 规范,了解如何在您的配件硬件上实现此协议。
  • 查看 ADK 2012 固件源代码 (<adk-src>/adk2012/board/library/ADK2/),其中演示了使用 USB 连接进行通用数据通信和音频流传输的配件的实现。
  • 当计划构建通过 USB 与配件通信的 Android 应用时,请查看 ADK 2012 Android 应用源代码 (<adk-src>/adk2012/app/)。

通过蓝牙连接

通过蓝牙连接与 Android 设备连接的配件可以使用 Android 支持的连接配置文件,包括简单串行协议 (SSP) 和高级音频分发协议 (A2DP) 配置文件。使用蓝牙连接到 Android 设备的配件必须支持蓝牙通信和至少一个受支持的连接配置文件。

用户必须在其 Android 设备上启用蓝牙并与您的配件配对才能使用该配件。您还可以提供一个辅助 Android 应用,用于处理专门的通信,例如数据输入或控制输出,以与您的配件交互。

后续步骤

要开始构建使用蓝牙连接的 Android 配件

  • 选择一个硬件平台或构建一个可以支持蓝牙通信和 Android 支持的连接配置文件(例如 SSP 或 A2DP)的硬件设备。
  • 查看 ADK 2012 固件源代码 (<adk-src>/adk2012/board/library/ADK2/),其中包括使用蓝牙连接进行通用数据通信和音频流传输的示例实现。
  • 当计划构建通过蓝牙与配件通信的 Android 应用时,请查看 ADK 2012 Android 应用源代码 (<adk-src>/adk2012/app/)。

注意: ADK 2012 源代码包括为 Texas Instruments CC2564 芯片构建的开源蓝牙堆栈,但它旨在与任何支持标准主机/控制器接口 (HCI) 的蓝牙芯片配合使用。