Сканирование и подключение iPhone к сенсору BLE, когда устройство iOS находится в фоновом режиме

Я хочу подключаться к датчику BLE каждый час на моем устройстве iOS для передачи данных с датчика на устройство iOS. Если приложение находится на переднем плане, все в порядке: от обнаружения до подключения к чтению / записи данных. После чтения / записи на мой датчик BLE я отключаю устройство iOS от датчика и датчик переходит в режим сна.

Теперь, когда наступает следующий цикл синхронизации (т. Е. Следующий час) и приложение находится в фоновом режиме, мне нужно снова сканировать периферийное устройство и считывать данные с него. Можно ли дать команду на сканирование периферийных устройств, когда приложение находится в фоновом режиме?

  1. Я включил фоновые режимы как bluetooth-central,
  2. Я реализовал все делегаты CBCentralManager, но не получил никакого обратного вызова, когда приложение работает в фоновом режиме, а периферийные устройства представляют рекламные данные. (-didDiscoverPeripheral, или же -didConnectPeripheral)

Итак, мой вопрос:

  1. Когда мое приложение находится в фоновом режиме, где я должен передать команду (scanForPeripheralsWithServices) предоставляя соответствующие сервисные UUID?
  2. Есть ли способ, с помощью которого я могу сканировать устройства BLE в фоновом режиме непрерывно или по определенному расписанию, как каждый час?

0 ответов

Другие вопросы по тегам