I searched around a bit and just found this as a possible duplicate question:
Multiple CBPeripheral's for same device
My problem is:
I have multiple services which all together have about 30-40 characteristics (Yes, I need all of them...). As starting point for dealing with CoreBluetooth I always used the Apple Sample Code (CoreBluetooth Temperature Sensor).
Discovery and Service/Characteristic handling is divided into two classes and this works fine for just a few characteristics. But handling this huge amount of characteristics in one class is not what I understand under "good software-design".
The first idea that come into ones mind is to create one class for every service. But unfortunately a CBPeripheral just can have one CBPeripheralDelegate at the same time. This means I can't divide it up into several classes.
(We don't have to start the discussion if BLE is the right technology for getting this amount of data - it isn't. But there are manufacturers that use BLE so they don't have to hassle with the MFi program...)
I also read the finally provided CoreBluetooth Programming Guide but it just describes basic workflows - nothing about the right design.
I'm looking for a nice design approach. You may have any suggestions, hints or links to sample code? Many thanks in advance!