# AudioDeviceCallback

Added in[API level 23](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Summary:[Ctors](https://developer.android.com/reference/android/media/AudioDeviceCallback#pubctors)\|[Methods](https://developer.android.com/reference/android/media/AudioDeviceCallback#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/media/AudioDeviceCallback#inhmethods)  

# AudioDeviceCallback

*** ** * ** ***

[Kotlin](https://developer.android.com/reference/kotlin/android/media/AudioDeviceCallback "View this page in Kotlin")\|Java

`
public


abstract
class
AudioDeviceCallback
`  
`

extends `[Object](https://developer.android.com/reference/java/lang/Object)`


``


`

|---|-----------------------------------|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.media.AudioDeviceCallback |

<br />

*** ** * ** ***

AudioDeviceCallback defines the mechanism by which applications can receive notifications of audio device connection and disconnection events.  
**See also:**

- [AudioManager.registerAudioDeviceCallback(AudioDeviceCallback, android.os.Handler)](https://developer.android.com/reference/android/media/AudioManager#registerAudioDeviceCallback(android.media.AudioDeviceCallback,%20android.os.Handler))

## Summary

|                                                      ### Public constructors                                                      ||
|--------------------------------------------------------------------------------------------------------------------------------|---|
| ` `[AudioDeviceCallback](https://developer.android.com/reference/android/media/AudioDeviceCallback#AudioDeviceCallback())`() ` |

|                                                                                                                                                                                                                   ### Public methods                                                                                                                                                                                                                    ||
|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` void` | ` `[onAudioDevicesAdded](https://developer.android.com/reference/android/media/AudioDeviceCallback#onAudioDevicesAdded(android.media.AudioDeviceInfo[]))`(`[AudioDeviceInfo[]](https://developer.android.com/reference/android/media/AudioDeviceInfo)` addedDevices) ` Called by the[AudioManager](https://developer.android.com/reference/android/media/AudioManager)to indicate that one or more audio devices have been connected.          |
| ` void` | ` `[onAudioDevicesRemoved](https://developer.android.com/reference/android/media/AudioDeviceCallback#onAudioDevicesRemoved(android.media.AudioDeviceInfo[]))`(`[AudioDeviceInfo[]](https://developer.android.com/reference/android/media/AudioDeviceInfo)` removedDevices) ` Called by the[AudioManager](https://developer.android.com/reference/android/media/AudioManager)to indicate that one or more audio devices have been disconnected. |

| ### Inherited methods |
|-----------------------|---|
| From class` `[java.lang.Object](https://developer.android.com/reference/java/lang/Object)` ` |--------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` `[Object](https://developer.android.com/reference/java/lang/Object)          | ` `[clone](https://developer.android.com/reference/java/lang/Object#clone())`() ` Creates and returns a copy of this object.                                                                                                                                                      | | ` boolean`                                                                     | ` `[equals](https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object))`(`[Object](https://developer.android.com/reference/java/lang/Object)` obj) ` Indicates whether some other object is "equal to" this one.                                           | | ` void`                                                                        | ` `[finalize](https://developer.android.com/reference/java/lang/Object#finalize())`() ` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.                                                          | | ` final `[Class](https://developer.android.com/reference/java/lang/Class)`<?>` | ` `[getClass](https://developer.android.com/reference/java/lang/Object#getClass())`() ` Returns the runtime class of this`Object`.                                                                                                                                                | | ` int`                                                                         | ` `[hashCode](https://developer.android.com/reference/java/lang/Object#hashCode())`() ` Returns a hash code value for the object.                                                                                                                                                 | | ` final void`                                                                  | ` `[notify](https://developer.android.com/reference/java/lang/Object#notify())`() ` Wakes up a single thread that is waiting on this object's monitor.                                                                                                                            | | ` final void`                                                                  | ` `[notifyAll](https://developer.android.com/reference/java/lang/Object#notifyAll())`() ` Wakes up all threads that are waiting on this object's monitor.                                                                                                                         | | ` `[String](https://developer.android.com/reference/java/lang/String)          | ` `[toString](https://developer.android.com/reference/java/lang/Object#toString())`() ` Returns a string representation of the object.                                                                                                                                            | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait(long,%20int))`(long timeoutMillis, int nanos) ` Causes the current thread to wait until it is awakened, typically by being*notified* or*interrupted*, or until a certain amount of real time has elapsed. | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait(long))`(long timeoutMillis) ` Causes the current thread to wait until it is awakened, typically by being*notified* or*interrupted*, or until a certain amount of real time has elapsed.                   | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait())`() ` Causes the current thread to wait until it is awakened, typically by being*notified* or*interrupted*.                                                                                             | ||

## Public constructors

### AudioDeviceCallback

```
public AudioDeviceCallback ()
```

<br />

<br />

## Public methods

### onAudioDevicesAdded

Added in[API level 23](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public void onAudioDevicesAdded (AudioDeviceInfo[] addedDevices)
```

Called by the[AudioManager](https://developer.android.com/reference/android/media/AudioManager)to indicate that one or more audio devices have been connected.

<br />

|                                                                                              Parameters                                                                                              ||
|----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `addedDevices` | `AudioDeviceInfo`: An array of[AudioDeviceInfo](https://developer.android.com/reference/android/media/AudioDeviceInfo)objects corresponding to any newly added audio devices. <br /> |

### onAudioDevicesRemoved

Added in[API level 23](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public void onAudioDevicesRemoved (AudioDeviceInfo[] removedDevices)
```

Called by the[AudioManager](https://developer.android.com/reference/android/media/AudioManager)to indicate that one or more audio devices have been disconnected.

<br />

|                                                                                                Parameters                                                                                                ||
|------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `removedDevices` | `AudioDeviceInfo`: An array of[AudioDeviceInfo](https://developer.android.com/reference/android/media/AudioDeviceInfo)objects corresponding to any newly removed audio devices. <br /> |