• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1page.title=Android Open Accessory (AOA)
2@jd:body
3
4<!--
5    Copyright 2015 The Android Open Source Project
6
7    Licensed under the Apache License, Version 2.0 (the "License");
8    you may not use this file except in compliance with the License.
9    You may obtain a copy of the License at
10
11        http://www.apache.org/licenses/LICENSE-2.0
12
13    Unless required by applicable law or agreed to in writing, software
14    distributed under the License is distributed on an "AS IS" BASIS,
15    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16    See the License for the specific language governing permissions and
17    limitations under the License.
18-->
19
20<p>Android Open Accessory (AOA) support allows external USB hardware
21(Android USB accessories) to interact with Android-powered devices in
22<em>accessory mode</em>. When an Android-powered powered device is in
23accessory mode, the connected accessory acts as the USB host (powers the bus and
24enumerates devices) and the Android-powered device acts as the USB accessory.
25</p>
26
27<p>Android USB accessories are designed to attach to Android-powered devices.
28Such accessories adhere to AOA, enabling them to detect Android-powered devices
29that support accessory mode, and must provide 500mA at 5V for charging power.
30Some previously-released Android-powered devices are capable of acting only
31as a USB device and cannot initiate connections with external USB devices. AOA
32support overcomes this limitation, enabling you to build accessories that can
33initiate connections and interact with an assortment of Android-powered devices.
34</p>
35
36<p class="note"><strong>Note:</strong> Accessory mode is dependent on device
37hardware; not all devices support accessory mode. Devices that support accessory
38mode can be filtered using a <code>&lt;uses-feature&gt;</code> element in the
39corresponding application's Android manifest. For details, see the
40<a href="http://developer.android.com/guide/topics/connectivity/usb/accessory.html#manifest">USB
41Accessory</a> developer guide.</p>
42
43<p>AOA has two versions that support different types of communication:</p>
44<ul>
45<li><strong>AOAv1</strong>. Supports generic accessory communication and adb
46debugging. Available in Android 3.1 (API Level 12) and higher and supported
47through an
48<a href="https://developers.google.com/android/add-ons/google-apis/">Add-On
49Library</a> in Android 2.3.4 (API Level 10) and higher.</li>
50<li><strong>AOAv2</strong>. Supports audio streaming and human interface
51device (HID) capabilities. Available in Android 4.1 (API Level 16).</li>
52</ul>