iOS: периферийное устройство Bluetooth LE больше не обновляется после возвращения в диапазон
Я написал приложение iOS, которое считывает данные из TI SensorTag. Следуя рекомендациям Apple, представленным в «Руководстве по программированию ядра Bluetooth», я подписался на значение служебной характеристики, вызвав метод setNotifyValue:forCharacteristic:
периферийного объекта setNotifyValue:forCharacteristic:
Периодически периферия вызывает peripheral:didUpdateValueForCharacteristic:error:
метод, чтобы сообщить мне, что значение интереса изменилось, и я прочитал его, как описано в документации.
Когда я перемещаю устройство iOS на определенное расстояние от SensorTag, метод didUpdateValueForCharacteristic
перестает быть вызванным (по-видимому), потому что два являются «вне диапазона». Но когда я перемещаю устройства обратно «в диапазоне», обновление не возобновляется. Так или иначе, мой «периферийный» объект больше не представляет собой реальное периферийное устройство.
Какие шаги я могу выполнить, чтобы 1) программно «заметить» периферийное устройство перестало быть «действительным» и 2) повторно подключиться к моему устройству без вмешательства пользователя?
- Bluetooth LE RSSI для обнаружения близости iOS
- Отправлять данные из CentralManager в PeripheralManager с помощью CoreBluetooth (BLE)
- Можно ли всегда включать и сканировать CoreBluetooth?
- Поддерживает ли CBCentralManager время от времени?
- Приложение не обнаруживает службы при повторном подключении после включения питания bluetooth
Благодаря!
–Билл
- Как отображать поддерживаемые службы Bluetooth в виде таблицы из devicename (UITableViewCell)?
- Инициировать iPhone-вызов с iPad через Bluetooth
- Bluetooth LE, scanForPeripheralsWithServices в фоновом режиме, увеличение скорости
- scanForPeripheralsWithServices: возвращает результат дважды на одном и том же периферийном
- Общаться с устройством BTLE из фонового приложения iOS
- Является ли iPhone периферийным и центральным с подключением нескольких периферийных iPhone один за другим?
- Получение данных ответа сканирования Bluetooth LE с помощью iOS
- iOS Проверьте работу Wi-Fi и Bluetooth
Когда ваше периферийное устройство отключается, centralManager:didDisconnectPeripheral:error
. В этом connectPeripheral:options:
вы можете сразу же запустить запрос соединения на ту же периферию с помощью connectPeripheral:options:
Этот запрос будет оставаться активным до тех пор, пока соединение не произойдет. Он не требует взаимодействия с пользователем.