我想通过Bluetooth low energy(BLE)4.0将机器人通过蓝牙连接到iPhone(4S或更高)。此机器人需要将iPhone的所有通知发送到设备。
例如:如果iPhone收到新电子邮件,我必须将该事件发送给机器人,它会使LED闪烁。停止。
我想知道蓝牙框架的iOS蓝牙APIs是否可以做到这一点,或者更好,可以共享互联网连接或任何可以做这项工作的事情。
我问这个,因为我听说API有一些限制。
PS:可以做到这一点的任何解决方案都是非常接受的(没有Wi-Fi连接解决方案)。
答案 0 :(得分:4)
蓝牙LE将是您想要的方式,因为标准蓝牙要求您的设备符合MFi。如果您能够要求支持网络的存在,标准Wi-Fi也可以工作。
从iOS 6.0开始,您可以将iPhone设置为蓝牙LE外围设备,如果配置为中心角色,则可以向设备发送通知。这将是一种使用新数据更新设备的非常省电的方法。
然而,在这里做你想做的事情有一个很大的障碍。 iOS应用程序无法访问系统范围的通知,因此您将无法收听传入的电子邮件或其他类似的通知。您将能够通过蓝牙LE向您的设备发送数据,但您不会知道电子邮件何时进入,以便您可以将其发送到您的设备。
答案 1 :(得分:0)
使用蓝牙4,您可以控制机器人,以及创建“通知”机器人。它可以很容易地完成。但是,如上所述,您无法在iOS中访问系统范围的通知。
但是,您可以使用外部解决方案来侦听系统通知,然后使用API来侦听单个编码通知,并让您的应用程序收听。
一个这样的系统是https://ifttt.com(没有隶属关系)
还有一些很棒的即插即用BLE选项可用于快速原型设计。
答案 2 :(得分:0)
你可以做到。一个简单的解决方案是让手机定期检查您的电子邮件。不要依赖或尝试使用外部Apple应用程序来执行此操作,而是使用您的邮件提供的服务。
如果是Gmail,请尝试转到https://mail.google.com/mail/feed/atom
。如果您已登录Gmail,则会看到XML格式的未读邮件。您使用网址登录的方式是:https://username:password@mail.google.com/mail/feed/atom
所以你可以做的是定期解析输出,当<fullcount>0</fullcount>
值更改时,通过BLE调用你的机器人服务,这应该作为这个特定事件的回调。