一段时间以来,我一直在与蓝牙LE做斗争,我可以成功地将一个Raspberry Pi变成一个iBeacon,这是许多在线教程中涉及使用Bluez堆栈的其中一个。
然而,当我用apps中可用的iBeacon应用程序测试iOS时,我注意到我可以连接到iBeacons并请求它们的服务(至少有些应用是这样的)。
我的意图是广播一条消息,比如“Hello”,这样我就可以在一个定制的iOS应用程序中看到它;然而,由于iBeacons只根据UUID配置文件发布位置数据,所以我陷入了困境。
基于上面提到的iBeacon应用程序的行为,他们似乎试图读取iBeacon的服务,我在想,也许我可以在iBeacon中创建一个包含我想要广播的消息的服务,所以当iOS应用程序读取服务的描述/特征时,可能会有消息。
我不知道我说的是不是一派胡言,但如果真的有可能的话,我想知道如何在我的Raspberry Pi中制作上述服务。
发布于 2014-01-17 21:10:13
您所描述的应该是可能的,但它将是一个自定义信标实现,并且不会是一个真正的iBeacon -- iBeacons不报告服务特征或发送除其三部分标识符以外的任何其他内容。做一个定制的蓝牙LE信标是完全没有问题的,只是要明白它不适用于iOS CoreLocation API,而是与它的CoreBluetooth API一起工作。
您需要了解一下如何在Linux上编程BlueZ来做到这一点,这样您就可以创建一个具有定义特性的真正服务。
https://stackoverflow.com/questions/21193158
复制相似问题