iOS и Bluetooth с низким энергопотреблением, возможности?

Я хочу подключить робота через Bluetooth к iPhone (4S или больше) через Bluetooth с низким энергопотреблением (БЛЕ) 4.0. Эти роботы требуют, чтобы все уведомления iPhone отправлялись на устройство.

Например: если iPhone получит новое электронное письмо, я должен отправить событие роботу, и он мигнет светодиодом. Останавливаться.

Я хочу знать, могут ли iOS Bluetooth API инфраструктуры Bluetooth сделать это или, что еще лучше, могут ли совместно использовать подключение к Интернету или что-то еще, что может сделать эту работу.

Я спрашиваю об этом, потому что слышал, что у API есть некоторые ограничения.

PS: ЛЮБОЕ решение, которое может это сделать, очень приемлемо (без решения для подключения Wi-Fi).


person Univers3    schedule 01.10.2012    source источник


Ответы (3)


Вам подойдет Bluetooth LE, потому что стандарт Bluetooth требует, чтобы ваше устройство было MFi-совместимый. Стандартный Wi-Fi также может работать, если вы можете потребовать наличия поддерживающей сети.

Начиная с iOS 6.0, вы можете настроить свой iPhone в качестве периферийного устройства Bluetooth LE, что позволит ему отправлять уведомления на ваше устройство, если оно настроено на центральную роль. Это был бы довольно энергоэффективный способ обновления вашего устройства новыми данными.

Тем не менее, есть одно большое препятствие для того, чтобы делать то, что вы хотите здесь. Приложения iOS не имеют доступа к общесистемным уведомлениям, поэтому вы не сможете прослушивать входящие электронные письма или другие подобные уведомления. Вы сможете отправлять данные на свое устройство через Bluetooth LE, но вы не будете знать, когда приходят электронные письма, чтобы вы могли отправить их на свое устройство.

person Brad Larson    schedule 01.10.2012

С bluetooth 4 вы могли управлять роботом, а также создавать бота «уведомления». Это можно было сделать довольно легко. Однако, как уже упоминалось, вы не можете получить доступ к общесистемным уведомлениям в iOS.

Однако вы можете использовать внешнее решение для прослушивания системных уведомлений, а затем API для прослушивания единственного закодированного уведомления, и ваше приложение будет его прослушивать.

Одной из таких систем является https://ifttt.com (без принадлежности).

Есть также несколько отличных вариантов BLE для быстрого прототипирования.

person donM    schedule 01.10.2012

Ты можешь это сделать. Простым решением было бы позволить телефону периодически проверять вашу электронную почту. Не полагайтесь и не пытайтесь использовать для этого внешние приложения Apple, а пользуйтесь услугами, предоставляемыми вашей почтой.

В случае с Gmail попробуйте перейти на https://mail.google.com/mail/feed/atom. Если вы вошли в свою почту Gmail, вы увидите непрочитанную почту в формате XML. Способ входа с использованием URL-адреса: https://username:[email protected]/mail/feed/atom

Итак, что вы можете сделать, так это периодически анализировать вывод и при изменении значения <fullcount>0</fullcount> вызывать службу вашего робота через BLE, которая должна действовать как обратный вызов для этого конкретного события.

person asido    schedule 02.10.2012
comment
Каковы последствия для безопасности при размещении паролей в URL-адресах в этом случае? - person Peter Mortensen; 07.10.2012