<!--
{
  "availability" : [
    "macOS: 27.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AccessoryAccess",
  "identifier" : "/documentation/AccessoryAccess",
  "metadataVersion" : "0.1.0",
  "role" : "Framework",
  "symbol" : {
    "kind" : "Framework",
    "modules" : [
      "Accessory Access"
    ],
    "preciseIdentifier" : "AccessoryAccess"
  },
  "title" : "Accessory Access"
}
-->

# Accessory Access

Manage access to connected USB accessories.

## Discussion

The AccessoryAccess framework provides access to connected USB devices that use the <doc://com.apple.documentation/documentation/IOUSBHost> framework, allowing clients to express interest through one or more registered accessory listeners.

## Topics

### Managing accessories

[`AAUSBAccessoryManager`](/documentation/AccessoryAccess/AAUSBAccessoryManager)

A class your app uses to manage USB accessories and the listener objects for those accessories.

[`AAUSBAccessory`](/documentation/AccessoryAccess/AAUSBAccessory)

A class that represents a USB accessory.

### Identifying specific USB accessories

[`AAUSBAccessoryMatchingCriteria`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria)

A class that represents the accessory matching criteria for a USB accessory.

### Responding to changes in accessory status

[`AAUSBAccessoryListener`](/documentation/AccessoryAccess/AAUSBAccessoryListener)

A class that conforms to the framework’s USB accessory listener protocol can listen to the accessory events.

### Errors

[`AAError`](/documentation/AccessoryAccess/AAError)

Values that describe errors the AccessoryAccess framework returns.

[`AAErrorDomain`](/documentation/AccessoryAccess/AAErrorDomain)

The string that represents the framework’s error domain.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)