---
title: CBCentralManagerDelegate
framework: corebluetooth
role: symbol
role_heading: Protocol
path: corebluetooth/cbcentralmanagerdelegate
---

# CBCentralManagerDelegate

A protocol that provides updates for the discovery and management of peripheral devices.

## Declaration

```swift
protocol CBCentralManagerDelegate : NSObjectProtocol
```

## Overview

Overview The CBCentralManagerDelegate protocol defines the methods that a delegate of a CBCentralManager object must adopt. The optional methods of the protocol allow the delegate to monitor the discovery, connectivity, and retrieval of peripheral devices. The only required method is centralManagerDidUpdateState(_:); the central manager calls this when its state updates, thereby indicating the availability of the central manager.

## Topics

### Monitoring Connections with Peripherals

- [centralManager(_:didConnect:)](corebluetooth/cbcentralmanagerdelegate/centralmanager(_:didconnect:).md)
- [centralManager(_:didDisconnectPeripheral:error:)](corebluetooth/cbcentralmanagerdelegate/centralmanager(_:diddisconnectperipheral:error:).md)
- [centralManager(_:didFailToConnect:error:)](corebluetooth/cbcentralmanagerdelegate/centralmanager(_:didfailtoconnect:error:).md)
- [centralManager(_:connectionEventDidOccur:for:)](corebluetooth/cbcentralmanagerdelegate/centralmanager(_:connectioneventdidoccur:for:).md)

### Discovering and Retrieving Peripherals

- [centralManager(_:didDiscover:advertisementData:rssi:)](corebluetooth/cbcentralmanagerdelegate/centralmanager(_:diddiscover:advertisementdata:rssi:).md)
- [Advertisement Data Retrieval Keys](corebluetooth/advertisement-data-retrieval-keys.md)

### Monitoring the Central Manager’s State

- [centralManagerDidUpdateState(_:)](corebluetooth/cbcentralmanagerdelegate/centralmanagerdidupdatestate(_:).md)
- [centralManager(_:willRestoreState:)](corebluetooth/cbcentralmanagerdelegate/centralmanager(_:willrestorestate:).md)

### Monitoring the Central Manager’s Authorization

- [centralManager(_:didUpdateANCSAuthorizationFor:)](corebluetooth/cbcentralmanagerdelegate/centralmanager(_:didupdateancsauthorizationfor:).md)

### Instance Methods

- [centralManager(_:didDisconnectPeripheral:timestamp:isReconnecting:error:)](corebluetooth/cbcentralmanagerdelegate/centralmanager(_:diddisconnectperipheral:timestamp:isreconnecting:error:).md)

## Relationships

### Inherits From

- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Centrals

- [CBCentral](corebluetooth/cbcentral.md)
- [CBCentralManager](corebluetooth/cbcentralmanager.md)
