Код, по сути, делает это:
Каждый раз, когда PeripheralManager получает readyToUpdateSubscribeers: https://developer.apple.com/documentation/corebluetooth/cbperipheralmanagerdelegate/1393248-peripheralmanagerisready
Он обновляет значение характеристики c, т.е. отправляет кусок данных
-
Я вычисляю данные на стороне получателя, и это всегда 32 Кбит / с - от iPhone SE до iPhone 6 с
От 8plus до 6s, я могу получить 44kbps
То же самое для 80 - 512 байт.
На периферийной стороне CBCentral.maximumUpdateValueLength равно 182, это также не сделать это быстрее
https://en.wikipedia.org/wiki/Bluetooth_Low_Energy - говорит 125 кбит / с - 2 Мбит / с
Я пытался открыть канал L2CAP между двумя устройствами, и все еще одни и те же данные Оцените ..
Ожидается ли это? Где будут узкие места?