Возможно ли / разрешено ли использовать iOS в качестве шлюза между устройством Bluetooth и облаком (когда приложение в фоновом режиме) - PullRequest
0 голосов
/ 16 октября 2019

Я хотел бы использовать устройство iOS в качестве шлюза между устройством BLE и облаком, когда приложение находится в фоновом режиме. Возможно ли это (а) и (б) в соответствии с рекомендациями Apple?

Architecture:

BLE device <-> iOS <-> Cloud

Сценарий таков:

  1. облако отправляет сообщение на устройство BLE
  2. Устройство BLE отправляет ответ (результат) в облако

решение для шага 1:

Насколько я понимаю, «фоновые уведомления» [1] могут бытьиспользуется для запуска действия на устройстве iOS, когда приложение находится в фоновом режиме. Можно ли отправить сообщение на устройство BLE в этом контексте? Есть ли более универсальное решение, которое работает для android и iOS?

решение для шага 2:

iOS «Core Bluetooth» позволяет выполнять фоновую обработку [2]. Таким образом, как только результат будет доступен, приложение для iOS будет запущено снова. В этом контексте разрешено ли открывать соединение с облаком (RESTful API, Azure Service Bus, концентратор IoT Azure или аналогичный) для пересылки результата?

[1] https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/pushing_background_updates_to_your_app

[2] https://developer.apple.com/library/archive/documentation/NetworkingInternetWeb/Conceptual/CoreBluetooth_concepts/CoreBluetoothBackgroundProcessingForIOSApps/PerformingTasksWhileYourAppIsInTheBackground.html

1 Ответ

0 голосов
/ 16 октября 2019

Да, это возможно. Я согласен с вашими вторыми решениями.

bluetooth-central - приложение обменивается данными с периферийными устройствами Bluetooth с низким энергопотреблением, используя базовую инфраструктуру Bluetooth. периферийное устройство Bluetooth - приложение обменивается данными с использованием базовой технологии Bluetooth.

...