Home | History | Annotate | Download | only in accessories
      1 page.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
     23 accessory mode, the connected accessory acts as the USB host (powers the bus and
     24 enumerates 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.
     28 Such accessories adhere to AOA, enabling them to detect Android-powered devices
     29 that support accessory mode, and must provide 500mA at 5V for charging power.
     30 Some previously-released Android-powered devices are capable of acting only
     31 as a USB device and cannot initiate connections with external USB devices. AOA
     32 support overcomes this limitation, enabling you to build accessories that can
     33 initiate 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
     37 hardware; not all devices support accessory mode. Devices that support accessory
     38 mode can be filtered using a <code>&lt;uses-feature&gt;</code> element in the
     39 corresponding application's Android manifest. For details, see the
     40 <a href="http://developer.android.com/guide/topics/connectivity/usb/accessory.html#manifest">USB
     41 Accessory</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
     46 debugging. Available in Android 3.1 (API Level 12) and higher and supported
     47 through an
     48 <a href="https://developers.google.com/android/add-ons/google-apis/">Add-On
     49 Library</a> in Android 2.3.4 (API Level 10) and higher.</li>
     50 <li><strong>AOAv2</strong>. Supports audio streaming and human interface
     51 device (HID) capabilities. Available in Android 4.1 (API Level 16).</li>
     52 </ul>