---
title: AccessoryControlDevice
framework: AudioAccessoryKit
role: symbol
role_heading: Class
platforms: [iOS 26.4+]
path: audioaccessorykit/accessorycontroldevice
---

# AccessoryControlDevice

A configuration object that manages audio accessory capabilities and state.

## Declaration

```swift
final class AccessoryControlDevice
```

## Mentioned in

Supporting automatic audio switching for third-party accessories

## Overview

Overview This class registers your paired audio accessory with the system and provides updates about your device’s state changes. The configuration lets the system intelligently switch the audio output device, based on information you provide the system, such as placement and connected devices.

## Topics

### Accessing the current configuration

- [current(for:)](audioaccessorykit/accessorycontroldevice/current(for:).md)

### Registering the device

- [register(_:_:)](audioaccessorykit/accessorycontroldevice/register(_:_:).md)

### Updating device state

- [update(_:)](audioaccessorykit/accessorycontroldevice/update(_:).md)

### Inspecting the accessory

- [accessory](audioaccessorykit/accessorycontroldevice/accessory.md)
- [configuration](audioaccessorykit/accessorycontroldevice/configuration-swift.property.md)

### Defining device characteristics

- [AccessoryControlDevice.Placement](audioaccessorykit/accessorycontroldevice/placement.md)
- [AccessoryControlDevice.Capabilities](audioaccessorykit/accessorycontroldevice/capabilities.md)
- [AccessoryControlDevice.Configuration](audioaccessorykit/accessorycontroldevice/configuration-swift.struct.md)

### Handling errors

- [AccessoryControlDevice.Error](audioaccessorykit/accessorycontroldevice/error.md)
