<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "macOS: -",
    "visionOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "ImageCaptureCore",
  "identifier" : "/documentation/ImageCaptureCore/ICDeviceBrowserDelegate",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "ImageCaptureCore"
    ],
    "preciseIdentifier" : "c:objc(pl)ICDeviceBrowserDelegate"
  },
  "title" : "ICDeviceBrowserDelegate"
}
-->

# ICDeviceBrowserDelegate

Methods for managing the addition and removal of devices and responding to device changes.

```
protocol ICDeviceBrowserDelegate : NSObjectProtocol
```

## Topics

### Adding and Removing Devices

[`deviceBrowser(_:didAdd:moreComing:)`](/documentation/ImageCaptureCore/ICDeviceBrowserDelegate/deviceBrowser(_:didAdd:moreComing:))

Tells the delegate that a device has been added.

[`deviceBrowser(_:didRemove:moreGoing:)`](/documentation/ImageCaptureCore/ICDeviceBrowserDelegate/deviceBrowser(_:didRemove:moreGoing:))

Tells the delegate that a device has been removed.

[`deviceBrowserDidEnumerateLocalDevices(_:)`](/documentation/ImageCaptureCore/ICDeviceBrowserDelegate/deviceBrowserDidEnumerateLocalDevices(_:))

Tells the delegate that the device browser has completed sending [`deviceBrowser(_:didAdd:moreComing:)`](/documentation/ImageCaptureCore/ICDeviceBrowserDelegate/deviceBrowser(_:didAdd:moreComing:)) for all local devices.

### Responding to Device Changes

[`deviceBrowser(_:requestsSelect:)`](/documentation/ImageCaptureCore/ICDeviceBrowserDelegate/deviceBrowser(_:requestsSelect:))

Tells the delegate when an event occurs on the device that may be of interest to the client application.

[`deviceBrowser(_:deviceDidChangeName:)`](/documentation/ImageCaptureCore/ICDeviceBrowserDelegate/deviceBrowser(_:deviceDidChangeName:))

Tells the delegate when the name of a device changes.

[`deviceBrowser(_:deviceDidChangeSharingState:)`](/documentation/ImageCaptureCore/ICDeviceBrowserDelegate/deviceBrowser(_:deviceDidChangeSharingState:))

Tells the delegate when the sharing state of a device changes.



---

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)