CoreBluetooth missing a way to set a debugging breakpoint for solving "API MISUSE"

Originator:regexident
Number:rdar://33824812 Date Originated:10-Aug-2017 12:24
Status:Open Resolved:
Product:iOS + SDK Product Version:n/a
Classification:Enhancement Reproducible:Always
 
Summary:
When (e.g.) scanning for peripherals on a `CBCentralManager` that is not powered-on one gets a warning in the console:

```
CoreBluetooth [API MISUSE]  can only accept commands while in the powered on state
```

There are in fact over a dozen of methods on `CBCentralManager`, `CBPeripheralManager`, `CBPeripheral` that emit these console warnings.

It would be much more useful if there was an internal method that one could place a breakpoint on for debugging, similar to how things work with malloc:

```
malloc: * error for object 0xc6a3970: pointer being freed was not allocated * set a breakpoint in malloc_error_break to debug.
```

Steps to Reproduce:
Use any of the Methods in CoreBluetooth while in an invalid state.

Expected Results:
Expect availability of breakpoint target.

Actual Results:
Sadness.

Version:
n/a

Notes:

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!