下载后可任意编辑AOA 协议开发入门基础下载后可任意编辑1
AOA 协议概述基于 AOA 协议实现 Android 终端 USB 通信方式称为配件模式
此模式下,与 Android 终端通信的另一端设备称为 Android 配件,两者都必须支持 AOA 协议
在 USB 通信过程中,Android 终端充当 USB 从机,Android 配件充当 USB 主机并为总线供电
Android 配件需具有 USB 主控制器功能并移植有 AOA 协议
配件内置 USB Embedded Host 端,可以为 Android 手机供电,并且识别 Android手机,建立数据通道
使得配件成为一个简化版的 PC Host 端
配件还必须提供 500 毫安在 5V 供电电源
图 1-1 USB 配件模式框图下载后可任意编辑2
AOA 协议工作过程图 2-1 AOA 协议整体交互图1
配件端等待手机连接
手机接入配件
配件通过 USB 驱动的控制通道(0 通道,端点 0)猎取手机的 vendor ID 与 product ID
下载后可任意编辑4
配件分析猎取的 vendor ID 是否为 0x18D1,以及 product ID 是否为 0x2D01, 0x2D02, 0x2D03 或0x2D04
假如均符合,则说件现在手机已经是配件模式,可以根据配件模式的要求直接重新配置USB 端点和接口
否则启动尝试进入配件模式流程
确定手机已经进入配件模式,重新枚举 USB 设备,手机重新进行 USB 协商
根据配件模式重新配置 USB 端点和接口,建立配件模式的数据通道
下载后可任意编辑图 2-1 启动配件模式交互流程下载后可任意编辑尝试启动配件模式交互流程:1
配件发送序号 51 的 USB 请求报文,手机收到后查询自己的 AOA 协议版本,发送响应报文给配件